# APIStatements

Statement:
Type RECT
        Left As Long
        Top As Long
        Right As Long
        Bottom As Long
End Type


Statement:
Type RECTL
        Left As Long
        Top As Long
        Right As Long
        Bottom As Long
End Type


Statement:
Type POINTAPI
        x As Long
        y As Long
End Type


Statement:
Type POINTL
        x As Long
        y As Long
End Type


Statement:
Type Size
        cx As Long
        cy As Long
End Type


Statement:
Type POINTS
        x  As Integer
        y  As Integer
End Type


Statement:
Type MSG
    hwnd As Long
    message As Long
    wParam As Long
    lParam As Long
    time As Long
    pt As POINTAPI
End Type


Statement:
Public Const STANDARD_RIGHTS_READ = (READ_CONTROL)


Statement:
Public Const STANDARD_RIGHTS_WRITE = (READ_CONTROL)


Statement:
Public Const STANDARD_RIGHTS_EXECUTE = (READ_CONTROL)


Statement:
Public Const STANDARD_RIGHTS_REQUIRED = &HF0000


Statement:
Public Const STANDARD_RIGHTS_ALL = &H1F0000


Statement:
Public Const SPECIFIC_RIGHTS_ALL = &HFFFF


Statement:
Type SID_IDENTIFIER_AUTHORITY
        Value(6) As Byte
End Type


Statement:
Public Const SID_REVISION = (1)                         '  Current revision level


Statement:
Public Const SID_MAX_SUB_AUTHORITIES = (15)


Statement:
Public Const SID_RECOMMENDED_SUB_AUTHORITIES = (1)	' Will change to around 6 in a future release.


Statement:
Type SID_AND_ATTRIBUTES
        Sid As Long
        Attributes As Long
End Type


Statement:
Public Const SECURITY_CREATOR_OWNER_RID = &H0


Statement:
Public Const SECURITY_CREATOR_GROUP_RID = &H1


Statement:
Public Const SECURITY_INTERACTIVE_RID = &H4


Statement:
Public Const SECURITY_ANONYMOUS_LOGON_RID = &H7


Statement:
Public Const SECURITY_LOGON_IDS_RID = &H5


Statement:
Public Const SECURITY_LOCAL_SYSTEM_RID = &H12


Statement:
Public Const SECURITY_NT_NON_UNIQUE = &H15


Statement:
Public Const SECURITY_BUILTIN_DOMAIN_RID = &H20


Statement:
Public Const DOMAIN_USER_RID_ADMIN = &H1F4


Statement:
Public Const DOMAIN_USER_RID_GUEST = &H1F5


Statement:
Public Const DOMAIN_GROUP_RID_ADMINS = &H200


Statement:
Public Const DOMAIN_GROUP_RID_USERS = &H201


Statement:
Public Const DOMAIN_GROUP_RID_GUESTS = &H202


Statement:
Public Const DOMAIN_ALIAS_RID_ADMINS = &H220


Statement:
Public Const DOMAIN_ALIAS_RID_USERS = &H221


Statement:
Public Const DOMAIN_ALIAS_RID_GUESTS = &H222


Statement:
Public Const DOMAIN_ALIAS_RID_POWER_USERS = &H223


Statement:
Public Const DOMAIN_ALIAS_RID_ACCOUNT_OPS = &H224


Statement:
Public Const DOMAIN_ALIAS_RID_SYSTEM_OPS = &H225


Statement:
Public Const DOMAIN_ALIAS_RID_PRINT_OPS = &H226


Statement:
Public Const DOMAIN_ALIAS_RID_BACKUP_OPS = &H227


Statement:
Public Const DOMAIN_ALIAS_RID_REPLICATOR = &H228


Statement:
Public Const SE_GROUP_ENABLED_BY_DEFAULT = &H2


Statement:
Public Const SE_GROUP_LOGON_ID = &HC0000000


Statement:
Public Const FILE_FLAG_WRITE_THROUGH = &H80000000


Statement:
Public Const FILE_FLAG_OVERLAPPED = &H40000000


Statement:
Public Const FILE_FLAG_NO_BUFFERING = &H20000000


Statement:
Public Const FILE_FLAG_RANDOM_ACCESS = &H10000000


Statement:
Public Const FILE_FLAG_SEQUENTIAL_SCAN = &H8000000


Statement:
Public Const FILE_FLAG_DELETE_ON_CLOSE = &H4000000


Statement:
Public Const FILE_FLAG_BACKUP_SEMANTICS = &H2000000


Statement:
Public Const FILE_FLAG_POSIX_SEMANTICS = &H1000000


Statement:
Public Const PIPE_READMODE_MESSAGE = &H2


Statement:
Public Const PIPE_UNLIMITED_INSTANCES = 255


Statement:
Public Const SECURITY_CONTEXT_TRACKING = &H40000


Statement:
Public Const SECURITY_EFFECTIVE_ONLY = &H80000


Statement:
Public Const SECURITY_SQOS_PRESENT = &H100000


Statement:
Public Const SECURITY_VALID_SQOS_FLAGS = &H1F0000


Statement:
Type OVERLAPPED
        Internal As Long
        InternalHigh As Long
        offset As Long
        OffsetHigh As Long
        hEvent As Long
End Type


Statement:
Type SECURITY_ATTRIBUTES
        nLength As Long
        lpSecurityDescriptor As Long
        bInheritHandle As Boolean
End Type


Statement:
Type PROCESS_INFORMATION
        hProcess As Long
        hThread As Long
        dwProcessId As Long
        dwThreadId As Long
End Type


Statement:
Type FILETIME
        dwLowDateTime As Long
        dwHighDateTime As Long
End Type


Statement:
Type SYSTEMTIME
        wYear As Integer
        wMonth As Integer
        wDayOfWeek As Integer
        wDay As Integer
        wHour As Integer
        wMinute As Integer
        wSecond As Integer
        wMilliseconds As Integer
End Type


Statement:
Public Const PST_NETWORK_BRIDGE = &H100&


Statement:
Type COMMPROP
        wPacketLength As Integer
        wPacketVersion As Integer
        dwServiceMask As Long
        dwReserved1 As Long
        dwMaxTxQueue As Long
        dwMaxRxQueue As Long
        dwMaxBaud As Long
        dwProvSubType As Long
        dwProvCapabilities As Long
        dwSettableParams As Long
        dwSettableBaud As Long
        wSettableData As Integer
        wSettableStopParity As Integer
        dwCurrentTxQueue As Long
        dwCurrentRxQueue As Long
        dwProvSpec1 As Long
        dwProvSpec2 As Long
        wcProvChar(1) As Integer
End Type


Statement:
Type COMSTAT
        fCtsHold As Long
        fDsrHold As Long
        fRlsdHold As Long
        fXoffHold As Long
        fXoffSent As Long
        fEof As Long
        fTxim As Long
        fReserved As Long
        cbInQue As Long
        cbOutQue As Long
End Type


Statement:
Public Const DTR_CONTROL_HANDSHAKE = &H2


Statement:
Public Const RTS_CONTROL_HANDSHAKE = &H2


Statement:
Type DCB
        DCBlength As Long
        BaudRate As Long
        fBinary As Long
        fParity As Long
        fOutxCtsFlow As Long
        fOutxDsrFlow As Long
        fDtrControl As Long
        fDsrSensitivity As Long
        fTXContinueOnXoff As Long
        fOutX As Long
        fInX As Long
        fErrorChar As Long
        fNull As Long
        fRtsControl As Long
        fAbortOnError As Long
        fDummy2 As Long
        wReserved As Integer
        XonLim As Integer
        XoffLim As Integer
        ByteSize As Byte
        Parity As Byte
        StopBits As Byte
        XonChar As Byte
        XoffChar As Byte
        ErrorChar As Byte
        EofChar As Byte
        EvtChar As Byte
End Type


Statement:
Type COMMTIMEOUTS
        ReadIntervalTimeout As Long
        ReadTotalTimeoutMultiplier As Long
        ReadTotalTimeoutConstant As Long
        WriteTotalTimeoutMultiplier As Long
        WriteTotalTimeoutConstant As Long
End Type


Statement:
Type SYSTEM_INFO
        dwOemID As Long
        dwPageSize As Long
        lpMinimumApplicationAddress As Long
        lpMaximumApplicationAddress As Long
        dwActiveProcessorMask As Long
        dwNumberOrfProcessors As Long
        dwProcessorType As Long
        dwAllocationGranularity As Long
        dwReserved As Long
End Type


Statement:
Public Const GMEM_LOWER = GMEM_NOT_BANKED


Statement:
Public Const GMEM_INVALID_HANDLE = &H8000


Statement:
Public Const GHND = (GMEM_MOVEABLE Or GMEM_ZEROINIT)


Statement:
Public Const GPTR = (GMEM_FIXED Or GMEM_ZEROINIT)


Statement:
Type MEMORYSTATUS
        dwLength As Long
        dwMemoryLoad As Long
        dwTotalPhys As Long
        dwAvailPhys As Long
        dwTotalPageFile As Long
        dwAvailPageFile As Long
        dwTotalVirtual As Long
        dwAvailVirtual As Long
End Type


Statement:
Public Const LMEM_INVALID_HANDLE = &H8000


Statement:
Public Const LHND = (LMEM_MOVEABLE + LMEM_ZEROINIT)


Statement:
Public Const LPTR = (LMEM_FIXED + LMEM_ZEROINIT)


Statement:
Public Const NONZEROLHND = (LMEM_MOVEABLE)


Statement:
Public Const DEBUG_ONLY_THIS_PROCESS = &H2


Statement:
Public Const NORMAL_PRIORITY_CLASS = &H20


Statement:
Public Const REALTIME_PRIORITY_CLASS = &H100


Statement:
Public Const CREATE_NEW_PROCESS_GROUP = &H200


Statement:
Public Const CREATE_NO_WINDOW = &H8000000


Statement:
Public Const PROFILE_KERNEL = &H20000000


Statement:
Public Const PROFILE_SERVER = &H40000000


Statement:
Public Const THREAD_BASE_PRIORITY_MIN = -2


Statement:
Public Const THREAD_BASE_PRIORITY_MAX = 2


Statement:
Public Const THREAD_BASE_PRIORITY_LOWRT = 15


Statement:
Public Const THREAD_BASE_PRIORITY_IDLE = -15


Statement:
Public Const THREAD_PRIORITY_LOWEST = THREAD_BASE_PRIORITY_MIN


Statement:
Public Const THREAD_PRIORITY_BELOW_NORMAL = (THREAD_PRIORITY_LOWEST + 1)


Statement:
Public Const THREAD_PRIORITY_HIGHEST = THREAD_BASE_PRIORITY_MAX


Statement:
Public Const THREAD_PRIORITY_ABOVE_NORMAL = (THREAD_PRIORITY_HIGHEST - 1)


Statement:
Public Const THREAD_PRIORITY_ERROR_RETURN = (MAXLONG)


Statement:
Public Const THREAD_PRIORITY_TIME_CRITICAL = THREAD_BASE_PRIORITY_LOWRT


Statement:
Public Const THREAD_PRIORITY_IDLE = THREAD_BASE_PRIORITY_IDLE


Statement:
Public Const APPLICATION_ERROR_MASK = &H20000000


Statement:
Public Const ERROR_SEVERITY_SUCCESS = &H0


Statement:
Public Const ERROR_SEVERITY_INFORMATIONAL = &H40000000


Statement:
Public Const ERROR_SEVERITY_WARNING = &H80000000


Statement:
Public Const ERROR_SEVERITY_ERROR = &HC0000000


Statement:
Public Const SUBLANG_NEUTRAL = &H0                       '  language neutral


Statement:
Public Const SUBLANG_DEFAULT = &H1                       '  user default


Statement:
Public Const SUBLANG_SYS_DEFAULT = &H2                   '  system default


Statement:
Public Const SUBLANG_CHINESE_TRADITIONAL = &H1           '  Chinese (Taiwan)


Statement:
Public Const SUBLANG_CHINESE_SIMPLIFIED = &H2            '  Chinese (PR China)


Statement:
Public Const SUBLANG_CHINESE_HONGKONG = &H3              '  Chinese (Hong Kong)


Statement:
Public Const SUBLANG_CHINESE_SINGAPORE = &H4             '  Chinese (Singapore)


Statement:
Public Const SUBLANG_DUTCH = &H1                         '  Dutch


Statement:
Public Const SUBLANG_DUTCH_BELGIAN = &H2                 '  Dutch (Belgian)


Statement:
Public Const SUBLANG_ENGLISH_US = &H1                    '  English (USA)


Statement:
Public Const SUBLANG_ENGLISH_UK = &H2                    '  English (UK)


Statement:
Public Const SUBLANG_ENGLISH_AUS = &H3                   '  English (Australian)


Statement:
Public Const SUBLANG_ENGLISH_CAN = &H4                   '  English (Canadian)


Statement:
Public Const SUBLANG_ENGLISH_NZ = &H5                    '  English (New Zealand)


Statement:
Public Const SUBLANG_ENGLISH_EIRE = &H6                  '  English (Irish)


Statement:
Public Const SUBLANG_FRENCH = &H1                        '  French


Statement:
Public Const SUBLANG_FRENCH_BELGIAN = &H2                '  French (Belgian)


Statement:
Public Const SUBLANG_FRENCH_CANADIAN = &H3               '  French (Canadian)


Statement:
Public Const SUBLANG_FRENCH_SWISS = &H4                  '  French (Swiss)


Statement:
Public Const SUBLANG_GERMAN = &H1                        '  German


Statement:
Public Const SUBLANG_GERMAN_SWISS = &H2                  '  German (Swiss)


Statement:
Public Const SUBLANG_GERMAN_AUSTRIAN = &H3               '  German (Austrian)


Statement:
Public Const SUBLANG_ITALIAN = &H1                       '  Italian


Statement:
Public Const SUBLANG_ITALIAN_SWISS = &H2                 '  Italian (Swiss)


Statement:
Public Const SUBLANG_NORWEGIAN_BOKMAL = &H1              '  Norwegian (Bokma


Statement:
Public Const SUBLANG_NORWEGIAN_NYNORSK = &H2             '  Norwegian (Nynorsk)


Statement:
Public Const SUBLANG_PORTUGUESE = &H2                    '  Portuguese


Statement:
Public Const SUBLANG_PORTUGUESE_BRAZILIAN = &H1          '  Portuguese (Brazilian)


Statement:
Public Const SUBLANG_SPANISH = &H1                       '  Spanish (Castilian)


Statement:
Public Const SUBLANG_SPANISH_MEXICAN = &H2               '  Spanish (Mexican)


Statement:
Public Const SUBLANG_SPANISH_MODERN = &H3                '  Spanish (Modern)


Statement:
Public Const SORT_DEFAULT = &H0                          '  sorting default


Statement:
Public Const SORT_JAPANESE_XJIS = &H0                    '  Japanese0xJIS order


Statement:
Public Const SORT_JAPANESE_UNICODE = &H1                 '  Japanese Unicode order


Statement:
Public Const SORT_CHINESE_BIG5 = &H0                     '  Chinese BIG5 order


Statement:
Public Const SORT_CHINESE_UNICODE = &H1                  '  Chinese Unicode order


Statement:
Public Const SORT_KOREAN_KSC = &H0                       '  Korean KSC order


Statement:
Public Const SORT_KOREAN_UNICODE = &H1                   '  Korean Unicode order


Statement:
Public Const FILE_READ_DATA = (&H1)                     '  file pipe


Statement:
Public Const FILE_LIST_DIRECTORY = (&H1)                '  directory


Statement:
Public Const FILE_WRITE_DATA = (&H2)                    '  file pipe


Statement:
Public Const FILE_ADD_FILE = (&H2)                      '  directory


Statement:
Public Const FILE_APPEND_DATA = (&H4)                   '  file


Statement:
Public Const FILE_ADD_SUBDIRECTORY = (&H4)              '  directory


Statement:
Public Const FILE_CREATE_PIPE_INSTANCE = (&H4)          '  named pipe


Statement:
Public Const FILE_READ_EA = (&H8)                       '  file directory


Statement:
Public Const FILE_READ_PROPERTIES = FILE_READ_EA


Statement:
Public Const FILE_WRITE_EA = (&H10)                     '  file directory


Statement:
Public Const FILE_WRITE_PROPERTIES = FILE_WRITE_EA


Statement:
Public Const FILE_EXECUTE = (&H20)                      '  file


Statement:
Public Const FILE_TRAVERSE = (&H20)                     '  directory


Statement:
Public Const FILE_DELETE_CHILD = (&H40)                 '  directory


Statement:
Public Const FILE_READ_ATTRIBUTES = (&H80)              '  all


Statement:
Public Const FILE_WRITE_ATTRIBUTES = (&H100)            '  all


Statement:
Public Const FILE_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE Or &H1FF)


Statement:
Public Const FILE_GENERIC_READ = (STANDARD_RIGHTS_READ Or FILE_READ_DATA Or FILE_READ_ATTRIBUTES Or FILE_READ_EA Or SYNCHRONIZE)


Statement:
Public Const FILE_GENERIC_WRITE = (STANDARD_RIGHTS_WRITE Or FILE_WRITE_DATA Or FILE_WRITE_ATTRIBUTES Or FILE_WRITE_EA Or FILE_APPEND_DATA Or SYNCHRONIZE)


Statement:
Public Const FILE_GENERIC_EXECUTE = (STANDARD_RIGHTS_EXECUTE Or FILE_READ_ATTRIBUTES Or FILE_EXECUTE Or SYNCHRONIZE)


Statement:
Public Const FILE_ATTRIBUTE_READONLY = &H1


Statement:
Public Const FILE_ATTRIBUTE_HIDDEN = &H2


Statement:
Public Const FILE_ATTRIBUTE_SYSTEM = &H4


Statement:
Public Const FILE_ATTRIBUTE_DIRECTORY = &H10


Statement:
Public Const FILE_ATTRIBUTE_ARCHIVE = &H20


Statement:
Public Const FILE_ATTRIBUTE_NORMAL = &H80


Statement:
Public Const FILE_ATTRIBUTE_TEMPORARY = &H100


Statement:
Public Const FILE_ATTRIBUTE_COMPRESSED = &H800


Statement:
Public Const FILE_NOTIFY_CHANGE_FILE_NAME = &H1


Statement:
Public Const FILE_NOTIFY_CHANGE_DIR_NAME = &H2


Statement:
Public Const FILE_NOTIFY_CHANGE_ATTRIBUTES = &H4


Statement:
Public Const FILE_NOTIFY_CHANGE_SIZE = &H8


Statement:
Public Const FILE_NOTIFY_CHANGE_LAST_WRITE = &H10


Statement:
Public Const FILE_NOTIFY_CHANGE_SECURITY = &H100


Statement:
Public Const MAILSLOT_WAIT_FOREVER = (-1)


Statement:
Public Const FILE_CASE_SENSITIVE_SEARCH = &H1


Statement:
Public Const FILE_CASE_PRESERVED_NAMES = &H2


Statement:
Public Const FILE_FILE_COMPRESSION = &H10


Statement:
Public Const FILE_VOLUME_IS_COMPRESSED = &H8000


Statement:
Public Const IO_COMPLETION_MODIFY_STATE = &H2


Statement:
Public Const IO_COMPLETION_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE Or &H3)


Statement:
Public Const DUPLICATE_CLOSE_SOURCE = &H1


Statement:
Public Const DUPLICATE_SAME_ACCESS = &H2


Statement:
Public Const ACCESS_SYSTEM_SECURITY = &H1000000


Statement:
Public Const MAXIMUM_ALLOWED = &H2000000


Statement:
Public Const GENERIC_EXECUTE = &H20000000


Statement:
Type GENERIC_MAPPING
        GenericRead As Long
        GenericWrite As Long
        GenericExecute As Long
        GenericAll As Long
End Type


Statement:
Type LUID
	LowPart As Long
	HighPart As Long
End Type


Statement:
Type LUID_AND_ATTRIBUTES
        pLuid As LUID
        Attributes As Long
End Type


Statement:
Type ACL
        AclRevision As Byte
        Sbz1 As Byte
        AclSize As Integer
        AceCount As Integer
        Sbz2 As Integer
End Type


Statement:
Type ACE_HEADER
        AceType As Byte
        AceFlags As Byte
        AceSize As Long
End Type


Statement:
Public Const ACCESS_ALLOWED_ACE_TYPE = &H0


Statement:
Public Const ACCESS_DENIED_ACE_TYPE = &H1


Statement:
Public Const SYSTEM_AUDIT_ACE_TYPE = &H2


Statement:
Public Const SYSTEM_ALARM_ACE_TYPE = &H3


Statement:
Public Const CONTAINER_INHERIT_ACE = &H2


Statement:
Public Const NO_PROPAGATE_INHERIT_ACE = &H4


Statement:
Public Const SUCCESSFUL_ACCESS_ACE_FLAG = &H40


Statement:
Public Const FAILED_ACCESS_ACE_FLAG = &H80


Statement:
Type ACCESS_ALLOWED_ACE
        Header As ACE_HEADER
        Mask As Long
        SidStart As Long
End Type


Statement:
Type ACCESS_DENIED_ACE
        Header As ACE_HEADER
        Mask As Long
        SidStart As Long
End Type


Statement:
Type SYSTEM_AUDIT_ACE
        Header As ACE_HEADER
        Mask As Long
        SidStart As Long
End Type


Statement:
Type SYSTEM_ALARM_ACE
        Header As ACE_HEADER
        Mask As Long
        SidStart As Long
End Type


Statement:
Type ACL_REVISION_INFORMATION
        AclRevision As Long
End Type


Statement:
Type ACL_SIZE_INFORMATION
        AceCount As Long
        AclBytesInUse As Long
        AclBytesFree As Long
End Type


Statement:
Public Const SECURITY_DESCRIPTOR_REVISION = (1)


Statement:
Public Const SECURITY_DESCRIPTOR_REVISION1 = (1)


Statement:
Public Const SECURITY_DESCRIPTOR_MIN_LENGTH = (20)


Statement:
Type SECURITY_DESCRIPTOR
        Revision As Byte
        Sbz1 As Byte
        Control As Long
        Owner As Long
        Group As Long
        Sacl As ACL
        Dacl As ACL
End Type


Statement:
Public Const SE_PRIVILEGE_ENABLED_BY_DEFAULT = &H1


Statement:
Public Const SE_PRIVILEGE_USED_FOR_ACCESS = &H80000000


Statement:
Public Const PRIVILEGE_SET_ALL_NECESSARY = (1)


Statement:
Type PRIVILEGE_SET
        PrivilegeCount As Long
        Control As Long
        Privilege(ANYSIZE_ARRAY) As LUID_AND_ATTRIBUTES
End Type


Statement:
Public Const SE_CREATE_TOKEN_NAME = "SeCreateTokenPrivilege"


Statement:
Public Const SE_ASSIGNPRIMARYTOKEN_NAME = "SeAssignPrimaryTokenPrivilege"


Statement:
Public Const SE_LOCK_MEMORY_NAME = "SeLockMemoryPrivilege"


Statement:
Public Const SE_INCREASE_QUOTA_NAME = "SeIncreaseQuotaPrivilege"


Statement:
Public Const SE_UNSOLICITED_INPUT_NAME = "SeUnsolicitedInputPrivilege"


Statement:
Public Const SE_MACHINE_ACCOUNT_NAME = "SeMachineAccountPrivilege"


Statement:
Public Const SE_TCB_NAME = "SeTcbPrivilege"


Statement:
Public Const SE_SECURITY_NAME = "SeSecurityPrivilege"


Statement:
Public Const SE_TAKE_OWNERSHIP_NAME = "SeTakeOwnershipPrivilege"


Statement:
Public Const SE_LOAD_DRIVER_NAME = "SeLoadDriverPrivilege"


Statement:
Public Const SE_SYSTEM_PROFILE_NAME = "SeSystemProfilePrivilege"


Statement:
Public Const SE_SYSTEMTIME_NAME = "SeSystemtimePrivilege"


Statement:
Public Const SE_PROF_SINGLE_PROCESS_NAME = "SeProfileSingleProcessPrivilege"


Statement:
Public Const SE_INC_BASE_PRIORITY_NAME = "SeIncreaseBasePriorityPrivilege"


Statement:
Public Const SE_CREATE_PAGEFILE_NAME = "SeCreatePagefilePrivilege"


Statement:
Public Const SE_CREATE_PERMANENT_NAME = "SeCreatePermanentPrivilege"


Statement:
Public Const SE_BACKUP_NAME = "SeBackupPrivilege"


Statement:
Public Const SE_RESTORE_NAME = "SeRestorePrivilege"


Statement:
Public Const SE_SHUTDOWN_NAME = "SeShutdownPrivilege"


Statement:
Public Const SE_DEBUG_NAME = "SeDebugPrivilege"


Statement:
Public Const SE_AUDIT_NAME = "SeAuditPrivilege"


Statement:
Public Const SE_SYSTEM_ENVIRONMENT_NAME = "SeSystemEnvironmentPrivilege"


Statement:
Public Const SE_CHANGE_NOTIFY_NAME = "SeChangeNotifyPrivilege"


Statement:
Public Const SE_REMOTE_SHUTDOWN_NAME = "SeRemoteShutdownPrivilege"


Statement:
Public Const REG_NONE = 0                       ' No value type


Statement:
Public Const REG_SZ = 1                         ' Unicode nul terminated string


Statement:
Public Const REG_EXPAND_SZ = 2                  ' Unicode nul terminated string


Statement:
Public Const REG_BINARY = 3                     ' Free form binary


Statement:
Public Const REG_DWORD = 4                      ' 32-bit number


Statement:
Public Const REG_DWORD_LITTLE_ENDIAN = 4        ' 32-bit number (same as REG_DWORD)


Statement:
Public Const REG_DWORD_BIG_ENDIAN = 5           ' 32-bit number


Statement:
Public Const REG_LINK = 6                       ' Symbolic Link (unicode)


Statement:
Public Const REG_MULTI_SZ = 7                   ' Multiple Unicode strings


Statement:
Public Const REG_RESOURCE_LIST = 8              ' Resource list in the resource map


Statement:
Public Const REG_FULL_RESOURCE_DESCRIPTOR = 9   ' Resource list in the hardware description


Statement:
Public Const REG_RESOURCE_REQUIREMENTS_LIST = 10


Statement:
Public Const REG_CREATED_NEW_KEY = &H1                      ' New Registry Key created


Statement:
Public Const REG_OPENED_EXISTING_KEY = &H2                      ' Existing Key opened


Statement:
Public Const REG_WHOLE_HIVE_VOLATILE = &H1                      ' Restore whole hive volatile


Statement:
Public Const REG_REFRESH_HIVE = &H2                      ' Unwind changes to last flush


Statement:
Public Const REG_NOTIFY_CHANGE_NAME = &H1                      ' Create or delete (child)


Statement:
Public Const REG_NOTIFY_CHANGE_ATTRIBUTES = &H2


Statement:
Public Const REG_NOTIFY_CHANGE_LAST_SET = &H4                      ' Time stamp


Statement:
Public Const REG_NOTIFY_CHANGE_SECURITY = &H8


Statement:
Public Const REG_LEGAL_CHANGE_FILTER = (REG_NOTIFY_CHANGE_NAME Or REG_NOTIFY_CHANGE_ATTRIBUTES Or REG_NOTIFY_CHANGE_LAST_SET Or REG_NOTIFY_CHANGE_SECURITY)


Statement:
Public Const REG_LEGAL_OPTION = (REG_OPTION_RESERVED Or REG_OPTION_NON_VOLATILE Or REG_OPTION_VOLATILE Or REG_OPTION_CREATE_LINK Or REG_OPTION_BACKUP_RESTORE)


Statement:
Public Const REG_OPTION_RESERVED = 0           ' Parameter is reserved


Statement:
Public Const REG_OPTION_NON_VOLATILE = 0       ' Key is preserved when system is rebooted


Statement:
Public Const REG_OPTION_VOLATILE = 1           ' Key is not preserved when system is rebooted


Statement:
Public Const REG_OPTION_CREATE_LINK = 2        ' Created key is a symbolic link


Statement:
Public Const REG_OPTION_BACKUP_RESTORE = 4     ' open for backup or restore


Statement:
Public Const KEY_ENUMERATE_SUB_KEYS = &H8


Statement:
Public Const KEY_READ = ((STANDARD_RIGHTS_READ Or KEY_QUERY_VALUE Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY) And (Not SYNCHRONIZE))


Statement:
Public Const KEY_WRITE = ((STANDARD_RIGHTS_WRITE Or KEY_SET_VALUE Or KEY_CREATE_SUB_KEY) And (Not SYNCHRONIZE))


Statement:
Public Const KEY_ALL_ACCESS = ((STANDARD_RIGHTS_ALL Or KEY_QUERY_VALUE Or KEY_SET_VALUE Or KEY_CREATE_SUB_KEY Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY Or KEY_CREATE_LINK) And (Not SYNCHRONIZE))


Statement:
Public Const KEY_EXECUTE = ((KEY_READ) And (Not SYNCHRONIZE))


Statement:
Public Const CREATE_THREAD_DEBUG_EVENT = 2


Statement:
Public Const CREATE_PROCESS_DEBUG_EVENT = 3


Statement:
Public Const EXIT_THREAD_DEBUG_EVENT = 4


Statement:
Public Const EXIT_PROCESS_DEBUG_EVENT = 5


Statement:
Public Const OUTPUT_DEBUG_STRING_EVENT = 8


Statement:
Public Const EXCEPTION_MAXIMUM_PARAMETERS = 15


Statement:
Type EXCEPTION_RECORD
    ExceptionCode As Long
    ExceptionFlags As Long
    pExceptionRecord As Long	' Pointer to an EXCEPTION_RECORD structure
    ExceptionAddress As Long
    NumberParameters As Long
    ExceptionInformation(EXCEPTION_MAXIMUM_PARAMETERS) As Long
End Type


Statement:
Type EXCEPTION_DEBUG_INFO
        pExceptionRecord As EXCEPTION_RECORD
        dwFirstChance As Long
End Type


Statement:
Type CREATE_THREAD_DEBUG_INFO
        hThread As Long
        lpThreadLocalBase As Long
        lpStartAddress As Long
End Type


Statement:
Type CREATE_PROCESS_DEBUG_INFO
        hFile As Long
        hProcess As Long
        hThread As Long
        lpBaseOfImage As Long
        dwDebugInfoFileOffset As Long
        nDebugInfoSize As Long
        lpThreadLocalBase As Long
        lpStartAddress As Long
        lpImageName As Long
        fUnicode As Integer
End Type


Statement:
Type EXIT_THREAD_DEBUG_INFO
        dwExitCode As Long
End Type


Statement:
Type EXIT_PROCESS_DEBUG_INFO
        dwExitCode As Long
End Type


Statement:
Type LOAD_DLL_DEBUG_INFO
        hFile As Long
        lpBaseOfDll As Long
        dwDebugInfoFileOffset As Long
        nDebugInfoSize As Long
        lpImageName As Long
        fUnicode As Integer
End Type


Statement:
Type UNLOAD_DLL_DEBUG_INFO
        lpBaseOfDll As Long
End Type


Statement:
Type OUTPUT_DEBUG_STRING_INFO
        lpDebugStringData As String
        fUnicode As Integer
        nDebugStringLength As Integer
End Type


Statement:
Type RIP_INFO
        dwError As Long
        dwType As Long
End Type


Statement:
Public Const IGNORE = 0 '  Ignore signal


Statement:
Public Const INFINITE = &HFFFF      '  Infinite timeout


Statement:
Public Const CE_RXOVER = &H1                '  Receive Queue overflow


Statement:
Public Const CE_OVERRUN = &H2               '  Receive Overrun Error


Statement:
Public Const CE_RXPARITY = &H4              '  Receive Parity Error


Statement:
Public Const CE_FRAME = &H8                 '  Receive Framing error


Statement:
Public Const CE_BREAK = &H10                '  Break Detected


Statement:
Public Const CE_TXFULL = &H100              '  TX Queue is full


Statement:
Public Const CE_PTO = &H200                 '  LPTx Timeout


Statement:
Public Const CE_IOE = &H400                 '  LPTx I/O Error


Statement:
Public Const CE_DNS = &H800                 '  LPTx Device not selected


Statement:
Public Const CE_OOP = &H1000                '  LPTx Out-Of-Paper


Statement:
Public Const CE_MODE = &H8000               '  Requested mode unsupported


Statement:
Public Const IE_BADID = (-1)                '  Invalid or unsupported id


Statement:
Public Const IE_OPEN = (-2)                 '  Device Already Open


Statement:
Public Const IE_NOPEN = (-3)                '  Device Not Open


Statement:
Public Const IE_MEMORY = (-4)               '  Unable to allocate queues


Statement:
Public Const IE_DEFAULT = (-5)              '  Error in default parameters


Statement:
Public Const IE_HARDWARE = (-10)            '  Hardware Not Present


Statement:
Public Const IE_BYTESIZE = (-11)            '  Illegal Byte Size


Statement:
Public Const IE_BAUDRATE = (-12)            '  Unsupported BaudRate


Statement:
Public Const EV_RXCHAR = &H1                '  Any Character received


Statement:
Public Const EV_RXFLAG = &H2                '  Received certain character


Statement:
Public Const EV_TXEMPTY = &H4               '  Transmitt Queue Empty


Statement:
Public Const EV_CTS = &H8                   '  CTS changed state


Statement:
Public Const EV_DSR = &H10                  '  DSR changed state


Statement:
Public Const EV_RLSD = &H20                 '  RLSD changed state


Statement:
Public Const EV_BREAK = &H40                '  BREAK received


Statement:
Public Const EV_ERR = &H80                  '  Line status error occurred


Statement:
Public Const EV_RING = &H100                '  Ring signal detected


Statement:
Public Const EV_PERR = &H200                '  Printer error occured


Statement:
Public Const EV_RX80FULL = &H400            '  Receive buffer is 80 percent full


Statement:
Public Const EV_EVENT1 = &H800              '  Provider specific event 1


Statement:
Public Const EV_EVENT2 = &H1000             '  Provider specific event 2


Statement:
Public Const SETXOFF = 1  '  Simulate XOFF received


Statement:
Public Const SETXON = 2 '  Simulate XON received


Statement:
Public Const RESETDEV = 7       '  Reset device if possible


Statement:
Public Const SETBREAK = 8  'Set the device break line


Statement:
Public Const CLRBREAK = 9 ' Clear the device break line


Statement:
Public Const PURGE_TXABORT = &H1     '  Kill the pending/current writes to the comm port.


Statement:
Public Const PURGE_RXABORT = &H2     '  Kill the pending/current reads to the comm port.


Statement:
Public Const PURGE_TXCLEAR = &H4     '  Kill the transmit queue if there.


Statement:
Public Const PURGE_RXCLEAR = &H8     '  Kill the typeahead buffer if there.


Statement:
Public Const LPTx = &H80        '  Set if ID is for LPT device


Statement:
Public Const S_PERIOD512 = 0    '  Freq = N/512 high pitch, less coarse hiss


Statement:
Public Const S_PERIOD1024 = 1   '  Freq = N/1024


Statement:
Public Const S_PERIOD2048 = 2   '  Freq = N/2048 low pitch, more coarse hiss


Statement:
Public Const S_PERIODVOICE = 3  '  Source is frequency from voice channel (3)


Statement:
Public Const S_WHITE512 = 4     '  Freq = N/512 high pitch, less coarse hiss


Statement:
Public Const S_WHITE1024 = 5    '  Freq = N/1024


Statement:
Public Const S_WHITE2048 = 6    '  Freq = N/2048 low pitch, more coarse hiss


Statement:
Public Const S_WHITEVOICE = 7   '  Source is frequency from voice channel (3)


Statement:
Public Const S_SERDVNA = (-1)   '  Device not available


Statement:
Public Const S_SEROFM = (-2)    '  Out of memory


Statement:
Public Const S_SERMACT = (-3)   '  Music active


Statement:
Public Const S_SERQFUL = (-4)   '  Queue full


Statement:
Public Const S_SERBDNT = (-5)   '  Invalid note


Statement:
Public Const S_SERDLN = (-6)    '  Invalid note length


Statement:
Public Const S_SERDCC = (-7)    '  Invalid note count


Statement:
Public Const S_SERDTP = (-8)    '  Invalid tempo


Statement:
Public Const S_SERDVL = (-9)    '  Invalid volume


Statement:
Public Const S_SERDMD = (-10)   '  Invalid mode


Statement:
Public Const S_SERDSH = (-11)   '  Invalid shape


Statement:
Public Const S_SERDPT = (-12)   '  Invalid pitch


Statement:
Public Const S_SERDFQ = (-13)   '  Invalid frequency


Statement:
Public Const S_SERDDR = (-14)   '  Invalid duration


Statement:
Public Const S_SERDSR = (-15)   '  Invalid source


Statement:
Public Const S_SERDST = (-16)   '  Invalid state


Statement:
Public Const NMPWAIT_WAIT_FOREVER = &HFFFF


Statement:
Public Const NMPWAIT_USE_DEFAULT_WAIT = &H0


Statement:
Public Const FS_CASE_IS_PRESERVED = FILE_CASE_PRESERVED_NAMES


Statement:
Public Const FS_CASE_SENSITIVE = FILE_CASE_SENSITIVE_SEARCH


Statement:
Public Const FS_UNICODE_STORED_ON_DISK = FILE_UNICODE_ON_DISK


Statement:
Public Const FS_PERSISTENT_ACLS = FILE_PERSISTENT_ACLS


Statement:
Public Const SECTION_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED Or SECTION_QUERY Or SECTION_MAP_WRITE Or SECTION_MAP_READ Or SECTION_MAP_EXECUTE Or SECTION_EXTEND_SIZE


Statement:
Public Const FILE_MAP_COPY = SECTION_QUERY


Statement:
Public Const FILE_MAP_WRITE = SECTION_MAP_WRITE


Statement:
Public Const FILE_MAP_READ = SECTION_MAP_READ


Statement:
Public Const FILE_MAP_ALL_ACCESS = SECTION_ALL_ACCESS


Statement:
Type OFSTRUCT
        cBytes As Byte
        fFixedDisk As Byte
        nErrCode As Integer
        Reserved1 As Integer
        Reserved2 As Integer
        szPathName(OFS_MAXPATHNAME) As Byte
End Type


Statement:
Declare Function InterlockedIncrement Lib "kernel32" Alias "InterlockedIncrement" (lpAddend As Long) As Long


Statement:
Declare Function InterlockedDecrement Lib "kernel32" Alias "InterlockedDecrement" (lpAddend As Long) As Long


Statement:
Declare Function InterlockedExchange Lib "kernel32" Alias "InterlockedExchange" (Target As Long, ByVal Value As Long) As Long


Statement:
Declare Function GetModuleFileName Lib "kernel32" Alias "GetModuleFileNameA" (ByVal hModule As Long, ByVal lpFileName As String, ByVal nSize As Long) As Long


Statement:
Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" (ByVal lpModuleName As String) As Long


Statement:
Declare Function CreateProcess Lib "kernel32" Alias "CreateProcessA" (ByVal lpApplicationName As String, ByVal lpCommandLine As String, lpProcessAttributes As SECURITY_ATTRIBUTES, lpThreadAttributes As SECURITY_ATTRIBUTES, ByVal bInheritHandles As Long, ByVal dwCreationFlags As Long, lpEnvironment As Any, ByVal lpCurrentDriectory As String, lpStartupInfo As STARTUPINFO, lpProcessInformation As PROCESS_INFORMATION) As Long


Statement:
Declare Function SetProcessShutdownParameters Lib "kernel32" Alias "SetProcessShutdownParameters" (ByVal dwLevel As Long, ByVal dwFlags As Long) As Long


Statement:
Declare Function GetProcessShutdownParameters Lib "kernel32" Alias "GetProcessShutdownParameters" (lpdwLevel As Long, lpdwFlags As Long) As Long


Statement:
Declare Sub FatalAppExit Lib "kernel32" Alias "FatalAppExitA" (ByVal uAction As Long, ByVal lpMessageText As String)


Statement:
Declare Sub GetStartupInfo Lib "kernel32" Alias "GetStartupInfoA" (lpStartupInfo As STARTUPINFO)


Statement:
Declare Function GetCommandLine Lib "kernel32" Alias "GetCommandLineA" () As String


Statement:
Declare Function GetEnvironmentVariable Lib "kernel32" Alias "GetEnvironmentVariableA" (ByVal lpName As String, ByVal lpBuffer As String, ByVal nSize As Long) As Long


Statement:
Declare Function SetEnvironmentVariable Lib "kernel32" Alias "SetEnvironmentVariableA" (ByVal lpName As String, ByVal lpValue As String) As Long


Statement:
Declare Function ExpandEnvironmentStrings Lib "kernel32" Alias "ExpandEnvironmentStringsA" (ByVal lpSrc As String, ByVal lpDst As String, ByVal nSize As Long) As Long


Statement:
Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long


Statement:
Declare Function LoadLibraryEx Lib "kernel32" Alias "LoadLibraryExA" (ByVal lpLibFileName As String, ByVal hFile As Long, ByVal dwFlags As Long) As Long


Statement:
Public Const DONT_RESOLVE_DLL_REFERENCES = &H1


Statement:
Declare Function LoadModule Lib "kernel32" Alias "LoadModule" (ByVal lpModuleName As String, lpParameterBlock As Any) As Long


Statement:
Declare Function FreeLibrary Lib "kernel32" Alias "FreeLibrary" (ByVal hLibModule As Long) As Long


Statement:
Declare Function WinExec Lib "kernel32" Alias "WinExec" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long


Statement:
Declare Sub DebugBreak Lib "kernel32" Alias "DebugBreak" ()


Statement:
Declare Function ContinueDebugEvent Lib "kernel32" Alias "ContinueDebugEvent" (ByVal dwProcessId As Long, ByVal dwThreadId As Long, ByVal dwContinueStatus As Long) As Long


Statement:
Declare Function DebugActiveProcess Lib "kernel32" Alias "DebugActiveProcess" (ByVal dwProcessId As Long) As Long


Statement:
Type CRITICAL_SECTION
	dummy As Long
End Type


Statement:
Declare Sub InitializeCriticalSection Lib "kernel32" Alias "InitializeCriticalSection" (lpCriticalSection As CRITICAL_SECTION)


Statement:
Declare Sub EnterCriticalSection Lib "kernel32" Alias "EnterCriticalSection" (lpCriticalSection As CRITICAL_SECTION)


Statement:
Declare Sub LeaveCriticalSection Lib "kernel32" Alias "LeaveCriticalSection" (lpCriticalSection As CRITICAL_SECTION)


Statement:
Declare Sub DeleteCriticalSection Lib "kernel32" Alias "DeleteCriticalSection" (lpCriticalSection As CRITICAL_SECTION)


Statement:
Declare Function SetEvent Lib "kernel32" Alias "SetEvent" (ByVal hEvent As Long) As Long


Statement:
Declare Function ResetEvent Lib "kernel32" Alias "ResetEvent" (ByVal hEvent As Long) As Long


Statement:
Declare Function PulseEvent Lib "kernel32" Alias "PulseEvent" (ByVal hEvent As Long) As Long


Statement:
Declare Function ReleaseSemaphore Lib "kernel32" Alias "ReleaseSemaphore" (ByVal hSemaphore As Long, ByVal lReleaseCount As Long, lpPreviousCount As Long) As Long


Statement:
Declare Function ReleaseMutex Lib "kernel32" Alias "ReleaseMutex" (ByVal hMutex As Long) As Long


Statement:
Declare Function WaitForSingleObject Lib "kernel32" Alias "WaitForSingleObject" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long


Statement:
Declare Function WaitForMultipleObjects Lib "kernel32" Alias "WaitForMultipleObjects" (ByVal nCount As Long, lpHandles As Long, ByVal bWaitAll As Long, ByVal dwMilliseconds As Long) As Long


Statement:
Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)


Statement:
Declare Sub OutputDebugString Lib "kernel32" Alias "OutputDebugStringA" (ByVal lpOutputString As String)


Statement:
Declare Function GetVersion Lib "kernel32" Alias "GetVersion" () As Long


Statement:
Declare Function OpenFile Lib "kernel32" Alias "OpenFile" (ByVal lpFileName As String, lpReOpenBuff As OFSTRUCT, ByVal wStyle As Long) As Long


Statement:
Declare Function GetTempFileName Lib "kernel32" Alias "GetTempFileNameA" (ByVal lpszPath As String, ByVal lpPrefixString As String, ByVal wUnique As Long, ByVal lpTempFileName As String) As Long


Statement:
Declare Function SetHandleCount Lib "kernel32" Alias "SetHandleCount" (ByVal wNumber As Long) As Long


Statement:
Declare Function GetLogicalDrives Lib "kernel32" Alias "GetLogicalDrives" () As Long


Statement:
Declare Function LockFile Lib "kernel32" Alias "LockFile" (ByVal hFile As Long, ByVal dwFileOffsetLow As Long, ByVal dwFileOffsetHigh As Long, ByVal nNumberOfBytesToLockLow As Long, ByVal nNumberOfBytesToLockHigh As Long) As Long


Statement:
Declare Function UnlockFile Lib "kernel32" Alias "UnlockFile" (ByVal hFile As Long, ByVal dwFileOffsetLow As Long, ByVal dwFileOffsetHigh As Long, ByVal nNumberOfBytesToUnlockLow As Long, ByVal nNumberOfBytesToUnlockHigh As Long) As Long


Statement:
Declare Function LockFileEx Lib "kernel32" Alias "LockFileEx" (ByVal hFile As Long, ByVal dwFlags As Long, ByVal dwReserved As Long, ByVal nNumberOfBytesToLockLow As Long, ByVal nNumberOfBytesToLockHigh As Long, lpOverlapped As OVERLAPPED) As Long


Statement:
Public Const LOCKFILE_FAIL_IMMEDIATELY = &H1


Statement:
Public Const LOCKFILE_EXCLUSIVE_LOCK = &H2


Statement:
Declare Function UnlockFileEx Lib "kernel32" Alias "UnlockFileEx" (ByVal hFile As Long, ByVal dwReserved As Long, ByVal nNumberOfBytesToUnlockLow As Long, ByVal nNumberOfBytesToUnlockHigh As Long, lpOverlapped As OVERLAPPED) As Long


Statement:
Type BY_HANDLE_FILE_INFORMATION
        dwFileAttributes As Long
        ftCreationTime As FILETIME
        ftLastAccessTime As FILETIME
        ftLastWriteTime As FILETIME
        dwVolumeSerialNumber As Long
        nFileSizeHigh As Long
        nFileSizeLow As Long
        nNumberOfLinks As Long
        nFileIndexHigh As Long
        nFileIndexLow As Long
End Type


Statement:
Declare Function GetFileInformationByHandle Lib "kernel32" Alias "GetFileInformationByHandle" (ByVal hFile As Long, lpFileInformation As BY_HANDLE_FILE_INFORMATION) As Long


Statement:
Declare Function GetFileType Lib "kernel32" Alias "GetFileType" (ByVal hFile As Long) As Long


Statement:
Declare Function GetFileSize Lib "kernel32" Alias "GetFileSize" (ByVal hFile As Long, lpFileSizeHigh As Long) As Long


Statement:
Declare Function GetStdHandle Lib "kernel32" Alias "GetStdHandle" (ByVal nStdHandle As Long) As Long


Statement:
Declare Function SetStdHandle Lib "kernel32" Alias "SetStdHandle" (ByVal nStdHandle As Long, ByVal nHandle As Long) As Long


Statement:
Declare Function WriteFile Lib "kernel32" Alias "WriteFile" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToWrite As Long, lpNumberOfBytesWritten As Long, lpOverlapped As OVERLAPPED) As Long


Statement:
Declare Function ReadFile Lib "kernel32" Alias "ReadFile" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToRead As Long, lpNumberOfBytesRead As Long, lpOverlapped As OVERLAPPED) As Long


Statement:
Declare Function FlushFileBuffers Lib "kernel32" Alias "FlushFileBuffers" (ByVal hFile As Long) As Long


Statement:
Declare Function DeviceIoControl Lib "kernel32" Alias "DeviceIoControl" (ByVal hDevice As Long, ByVal dwIoControlCode As Long, lpInBuffer As Any, ByVal nInBufferSize As Long, lpOutBuffer As Any, ByVal nOutBufferSize As Long, lpBytesReturned As Long, lpOverlapped As OVERLAPPED) As Long


Statement:
Declare Function SetEndOfFile Lib "kernel32" Alias "SetEndOfFile" (ByVal hFile As Long) As Long


Statement:
Declare Function SetFilePointer Lib "kernel32" Alias "SetFilePointer" (ByVal hFile As Long, ByVal lDistanceToMove As Long, lpDistanceToMoveHigh As Long, ByVal dwMoveMethod As Long) As Long


Statement:
Declare Function FindClose Lib "kernel32" Alias "FindClose" (ByVal hFindFile As Long) As Long


Statement:
Declare Function GetFileTime Lib "kernel32" Alias "GetFileTime" (ByVal hFile As Long, lpCreationTime As FILETIME, lpLastAccessTime As FILETIME, lpLastWriteTime As FILETIME) As Long


Statement:
Declare Function SetFileTime Lib "kernel32" Alias "SetFileTime" (ByVal hFile As Long, lpCreationTime As FILETIME, lpLastAccessTime As FILETIME, lpLastWriteTime As FILETIME) As Long


Statement:
Declare Function CloseHandle Lib "kernel32" Alias "CloseHandle" (ByVal hObject As Long) As Long


Statement:
Declare Function DuplicateHandle Lib "kernel32" Alias "DuplicateHandle" (ByVal hSourceProcessHandle As Long, ByVal hSourceHandle As Long, ByVal hTargetProcessHandle As Long, lpTargetHandle As Long, ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwOptions As Long) As Long


Statement:
Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long


Statement:
Declare Function GlobalAlloc Lib "kernel32" Alias "GlobalAlloc" (ByVal wFlags As Long, ByVal dwBytes As Long) As Long


Statement:
Declare Function GlobalFree Lib "kernel32" Alias "GlobalFree" (ByVal hMem As Long) As Long


Statement:
Declare Function GlobalHandle Lib "kernel32" Alias "GlobalHandle" (wMem As Any) As Long


Statement:
Declare Function GlobalLock Lib "kernel32" Alias "GlobalLock" (ByVal hMem As Long) As Long


Statement:
Declare Function GlobalReAlloc Lib "kernel32" Alias "GlobalReAlloc" (ByVal hMem As Long, ByVal dwBytes As Long, ByVal wFlags As Long) As Long


Statement:
Declare Function GlobalSize Lib "kernel32" Alias "GlobalSize" (ByVal hMem As Long) As Long


Statement:
Declare Function GlobalUnlock Lib "kernel32" Alias "GlobalUnlock" (ByVal hMem As Long) As Long


Statement:
Declare Function GlobalFlags Lib "kernel32" Alias "GlobalFlags" (ByVal hMem As Long) As Long


Statement:
Declare Sub GlobalMemoryStatus Lib "kernel32" Alias "GlobalMemoryStatus" (lpBuffer As MEMORYSTATUS)


Statement:
Declare Function LocalAlloc Lib "kernel32" Alias "LocalAlloc" (ByVal wFlags As Long, ByVal wBytes As Long) As Long


Statement:
Declare Function LocalFree Lib "kernel32" Alias "LocalFree" (ByVal hMem As Long) As Long


Statement:
Declare Function LocalHandle Lib "kernel32" Alias "LocalHandle" (wMem As Any) As Long


Statement:
Declare Function LocalLock Lib "kernel32" Alias "LocalLock" (ByVal hMem As Long) As Long


Statement:
Declare Function LocalReAlloc Lib "kernel32" Alias "LocalReAlloc" (ByVal hMem As Long, ByVal wBytes As Long, ByVal wFlags As Long) As Long


Statement:
Declare Function LocalSize Lib "kernel32" Alias "LocalSize" (ByVal hMem As Long) As Long


Statement:
Declare Function LocalUnlock Lib "kernel32" Alias "LocalUnlock" (ByVal hMem As Long) As Long


Statement:
Declare Function LocalFlags Lib "kernel32" Alias "LocalFlags" (ByVal hMem As Long) As Long


Statement:
Type MEMORY_BASIC_INFORMATION
     BaseAddress as Long
     AllocationBase as Long
     AllocationProtect As Long
     RegionSize As Long
     State As Long
     Protect As Long
     lType As Long
End Type


Statement:
Declare Function FlushInstructionCache Lib "kernel32" Alias "FlushInstructionCache" (ByVal hProcess As Long, lpBaseAddress As Any, ByVal dwSize As Long) As Long


Statement:
Declare Function VirtualAlloc Lib "kernel32" Alias "VirtualAlloc" (lpAddress As Any, ByVal dwSize As Long, ByVal flAllocationType As Long, ByVal flProtect As Long) As Long


Statement:
Declare Function VirtualFree Lib "kernel32" Alias "VirtualFree" (lpAddress As Any, ByVal dwSize As Long, ByVal dwFreeType As Long) As Long


Statement:
Declare Function VirtualProtect Lib "kernel32" Alias "VirtualProtect" (lpAddress As Any, ByVal dwSize As Long, ByVal flNewProtect As Long, lpflOldProtect As Long) As Long


Statement:
Declare Function VirtualQuery Lib "kernel32" Alias "VirtualQuery" (lpAddress As Any, lpBuffer As MEMORY_BASIC_INFORMATION, ByVal dwLength As Long) As Long


Statement:
Declare Function VirtualProtectEx Lib "kernel32" Alias "VirtualProtectEx" (ByVal hProcess As Long, lpAddress As Any, ByVal dwSize As Long, ByVal flNewProtect As Long, lpflOldProtect As Long) As Long


Statement:
Declare Function VirtualQueryEx Lib "kernel32" Alias "VirtualQueryEx" (ByVal hProcess As Long, lpAddress As Any, lpBuffer As MEMORY_BASIC_INFORMATION, ByVal dwLength As Long) As Long


Statement:
Declare Function HeapCreate Lib "kernel32" Alias "HeapCreate" (ByVal flOptions As Long, ByVal dwInitialSize As Long, ByVal dwMaximumSize As Long) As Long


Statement:
Declare Function HeapDestroy Lib "kernel32" Alias "HeapDestroy" (ByVal hHeap As Long) As Long


Statement:
Declare Function HeapAlloc Lib "kernel32" Alias "HeapAlloc" (ByVal hHeap As Long, ByVal dwFlags As Long, ByVal dwBytes As Long) As Long


Statement:
Declare Function HeapReAlloc Lib "kernel32" Alias "HeapReAlloc" (ByVal hHeap As Long, ByVal dwFlags As Long, lpMem As Any, ByVal dwBytes As Long) As Long


Statement:
Declare Function HeapFree Lib "kernel32" Alias "HeapFree" (ByVal hHeap As Long, ByVal dwFlags As Long, lpMem As Any) As Long


Statement:
Declare Function HeapSize Lib "kernel32" Alias "HeapSize" (ByVal hHeap As Long, ByVal dwFlags As Long, lpMem As Any) As Long


Statement:
Declare Function GetProcessHeap Lib "kernel32" Alias "GetProcessHeap" () As Long


Statement:
Declare Function GetProcessTimes Lib "kernel32" Alias "GetProcessTimes" (ByVal hProcess As Long, lpCreationTime As FILETIME, lpExitTime As FILETIME, lpKernelTime As FILETIME, lpUserTime As FILETIME) As Long


Statement:
Declare Function OpenProcess Lib "kernel32" Alias "OpenProcess" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long


Statement:
Declare Function GetCurrentProcess Lib "kernel32" Alias "GetCurrentProcess" () As Long


Statement:
Declare Function GetCurrentProcessId Lib "kernel32" Alias "GetCurrentProcessId" () As Long


Statement:
Declare Sub ExitProcess Lib "kernel32" Alias "ExitProcess" (ByVal uExitCode As Long)


Statement:
Declare Function TerminateProcess Lib "kernel32" Alias "TerminateProcess" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long


Statement:
Declare Function GetExitCodeProcess Lib "kernel32" Alias "GetExitCodeProcess" (ByVal hProcess As Long, lpExitCode As Long) As Long


Statement:
Declare Function GetLastError Lib "kernel32" Alias "GetLastError" () As Long


Statement:
Declare Sub SetLastError Lib "kernel32" Alias "SetLastError" (ByVal dwErrCode As Long)


Statement:
Declare Sub SetLastErrorEx Lib "user32" Alias "SetLastErrorEx" (ByVal dwErrCode As Long, ByVal dwType As Long)


Statement:
Declare Function GetOverlappedResult Lib "kernel32" Alias "GetOverlappedResult" (ByVal hFile As Long, lpOverlapped As OVERLAPPED, lpNumberOfBytesTransferred As Long, ByVal bWait As Long) As Long


Statement:
Public Const SEM_FAILCRITICALERRORS = &H1


Statement:
Public Const SEM_NOGPFAULTERRORBOX = &H2


Statement:
Public Const SEM_NOOPENFILEERRORBOX = &H8000


Statement:
Declare Sub SetDebugErrorLevel Lib "user32" Alias "SetDebugErrorLevel" (ByVal dwLevel As Long)


Statement:
Declare Function SetErrorMode Lib "kernel32" Alias "SetErrorMode" (ByVal wMode As Long) As Long


Statement:
Declare Function ReadProcessMemory Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Long, lpBaseAddress As Any, lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long


Statement:
Declare Function WriteProcessMemory Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Long, lpBaseAddress As Any, lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long


Statement:
Declare Function GetThreadContext Lib "kernel32" Alias "GetThreadContext" (ByVal hThread As Long, lpContext As CONTEXT) As Long


Statement:
Declare Function SetThreadContext Lib "kernel32" Alias "SetThreadContext" (ByVal hThread As Long, lpContext As CONTEXT) As Long


Statement:
Declare Function SuspendThread Lib "kernel32" Alias "SuspendThread" (ByVal hThread As Long) As Long


Statement:
Declare Function ResumeThread Lib "kernel32" Alias "ResumeThread" (ByVal hThread As Long) As Long


Statement:
Declare Function FindResource Lib "kernel32" Alias "FindResourceA" (ByVal hInstance As Long, ByVal lpName As String, ByVal lpType As String) As Long


Statement:
Declare Function FindResourceEx Lib "kernel32" Alias "FindResourceExA" (ByVal hModule As Long, ByVal lpType As String, ByVal lpName As String, ByVal wLanguage As Long) As Long


Statement:
Declare Function BeginUpdateResource Lib "kernel32" Alias "BeginUpdateResourceA" (ByVal pFileName As String, ByVal bDeleteExistingResources As Long) As Long


Statement:
Declare Function UpdateResource Lib "kernel32" Alias "UpdateResourceA" (ByVal hUpdate As Long, ByVal lpType As String, ByVal lpName As String, ByVal wLanguage As Long, lpData As Any, ByVal cbData As Long) As Long


Statement:
Declare Function EndUpdateResource Lib "kernel32" Alias "EndUpdateResourceA" (ByVal hUpdate As Long, ByVal fDiscard As Long) As Long


Statement:
Declare Function LoadResource Lib "kernel32" Alias "LoadResource" (ByVal hInstance As Long, ByVal hResInfo As Long) As Long


Statement:
Declare Function LockResource Lib "kernel32" Alias "LockResource" (ByVal hResData As Long) As Long


Statement:
Declare Function SizeofResource Lib "kernel32" Alias "SizeofResource" (ByVal hInstance As Long, ByVal hResInfo As Long) As Long


Statement:
Declare Function InitAtomTable Lib "kernel32" Alias "InitAtomTable" (ByVal nSize As Long) As Long


Statement:
Declare Function AddAtom Lib "kernel32" Alias "AddAtomA" (ByVal lpString As String) As Integer


Statement:
Declare Function DeleteAtom Lib "kernel32" Alias "DeleteAtom" (ByVal nAtom As Integer) As Integer


Statement:
Declare Function FindAtom Lib "kernel32" Alias "FindAtomA" (ByVal lpString As String) As Integer


Statement:
Declare Function GetAtomName Lib "kernel32" Alias "GetAtomNameA" (ByVal nAtom As Integer, ByVal lpBuffer As String, ByVal nSize As Long) As Long


Statement:
Declare Function GlobalAddAtom Lib "kernel32" Alias "GlobalAddAtomA" (ByVal lpString As String) As Integer


Statement:
Declare Function GlobalDeleteAtom Lib "kernel32" Alias "GlobalDeleteAtom" (ByVal nAtom As Integer) As Integer


Statement:
Declare Function GlobalFindAtom Lib "kernel32" Alias "GlobalFindAtomA" (ByVal lpString As String) As Integer


Statement:
Declare Function GlobalGetAtomName Lib "kernel32" Alias "GlobalGetAtomNameA" (ByVal nAtom As Integer, ByVal lpBuffer As String, ByVal nSize As Long) As Long


Statement:
Declare Function GetProfileInt Lib "kernel32" Alias "GetProfileIntA" (ByVal lpAppName As String, ByVal lpKeyName As String, ByVal nDefault As Long) As Long


Statement:
Declare Function GetProfileString Lib "kernel32" Alias "GetProfileStringA" (ByVal lpAppName As String, ByVal lpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long) As Long


Statement:
Declare Function WriteProfileString Lib "kernel32" Alias "WriteProfileStringA" (ByVal lpszSection As String, ByVal lpszKeyName As String, ByVal lpszString As String) As Long


Statement:
Declare Function GetProfileSection Lib "kernel32" Alias "GetProfileSectionA" (ByVal lpAppName As String, ByVal lpReturnedString As String, ByVal nSize As Long) As Long


Statement:
Declare Function WriteProfileSection Lib "kernel32" Alias "WriteProfileSectionA" (ByVal lpAppName As String, ByVal lpString As String) As Long


Statement:
Declare Function GetPrivateProfileInt Lib "kernel32" Alias "GetPrivateProfileIntA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal nDefault As Long, ByVal lpFileName As String) As Long


Statement:
Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long


Statement:
Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long


Statement:
Declare Function GetPrivateProfileSection Lib "kernel32" Alias "GetPrivateProfileSectionA" (ByVal lpAppName As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long


Statement:
Declare Function WritePrivateProfileSection Lib "kernel32" Alias "WritePrivateProfileSectionA" (ByVal lpAppName As String, ByVal lpString As String, ByVal lpFileName As String) As Long


Statement:
Declare Function GetWindowsDirectory Lib "kernel32" Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long


Statement:
Declare Function GetSystemDirectory Lib "kernel32" Alias "GetSystemDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long


Statement:
Declare Function GetTempPath Lib "kernel32" Alias "GetTempPathA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long


Statement:
Declare Function SetCurrentDirectory Lib "kernel32" Alias "SetCurrentDirectoryA" (ByVal lpPathName As String) As Long


Statement:
Declare Function GetCurrentDirectory Lib "kernel32" Alias "GetCurrentDirectory" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long


Statement:
Declare Function GetDiskFreeSpace Lib "kernel32" Alias "GetDiskFreeSpaceA" (ByVal lpRootPathName As String, lpSectorsPerCluster As Long, lpBytesPerSector As Long, lpNumberOfFreeClusters As Long, lpTtoalNumberOfClusters As Long) As Long


Statement:
Declare Function CreateDirectory Lib "kernel32" Alias "CreateDirectoryA" (ByVal lpPathName As String, lpSecurityAttributes As SECURITY_ATTRIBUTES) As Long


Statement:
Declare Function CreateDirectoryEx Lib "kernel32" Alias "CreateDirectoryExA" (ByVal lpTemplateDirectory As String, ByVal lpNewDirectory As String, lpSecurityAttributes As SECURITY_ATTRIBUTES) As Long


Statement:
Declare Function RemoveDirectory Lib "kernel32" Alias "RemoveDirectoryA" (ByVal lpPathName As String) As Long


Statement:
Declare Function GetFullPathName Lib "kernel32" Alias "GetFullPathNameA" (ByVal lpFileName As String, ByVal nBufferLength As Long, ByVal lpBuffer As String, ByVal lpFilePart As String) As Long


Statement:
Public Const DDD_REMOVE_DEFINITION = &H2


Statement:
Public Const DDD_EXACT_MATCH_ON_REMOVE = &H4


Statement:
Declare Function DefineDosDevice Lib "kernel32" Alias "DefineDosDeviceA" (ByVal dwFlags As Long, ByVal lpDeviceName As String, ByVal lpTargetPath As String) As Long


Statement:
Declare Function QueryDosDevice Lib "kernel32" Alias "QueryDosDeviceA" (ByVal lpDeviceName As String, ByVal lpTargetPath As String, ByVal ucchMax As Long) As Long


Statement:
Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, lpSecurityAttributes As SECURITY_ATTRIBUTES, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long


Statement:
Declare Function SetFileAttributes Lib "kernel32" Alias "SetFileAttributesA" (ByVal lpFileName As String, ByVal dwFileAttributes As Long) As Long


Statement:
Declare Function GetFileAttributes Lib "kernel32" Alias "GetFileAttributesA" (ByVal lpFileName As String) As Long


Statement:
Declare Function DeleteFile Lib "kernel32" Alias "DeleteFileA" (ByVal lpFileName As String) As Long


Statement:
Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long


Statement:
Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long


Statement:
Declare Function SearchPath Lib "kernel32" Alias "SearchPathA" (ByVal lpPath As String, ByVal lpFileName As String, ByVal lpExtension As String, ByVal nBufferLength As Long, ByVal lpBuffer As String, ByVal lpFilePart As String) As Long


Statement:
Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long


Statement:
Declare Function MoveFile Lib "kernel32" Alias "MoveFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String) As Long


Statement:
Declare Function MoveFileEx Lib "kernel32" Alias "MoveFileExA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal dwFlags As Long) As Long


Statement:
Public Const MOVEFILE_REPLACE_EXISTING = &H1


Statement:
Public Const MOVEFILE_COPY_ALLOWED = &H2


Statement:
Public Const MOVEFILE_DELAY_UNTIL_REBOOT = &H4


Statement:
Type EVENTLOGRECORD
     Length as Long     '  Length of full record
     Reserved as Long     '  Used by the service
     RecordNumber as Long     '  Absolute record number
     TimeGenerated as Long     '  Seconds since 1-1-1970
     TimeWritten as Long     'Seconds since 1-1-1970
     EventID as Long
     EventType as Integer
     NumStrings as Integer
     EventCategory as Integer
     ReservedFlags as Integer     '  For use with paired events (auditing)
     ClosingRecordNumber as Long     'For use with paired events (auditing)
     StringOffset as Long     '  Offset from beginning of record
     UserSidLength as Long
     UserSidOffset as Long
     DataLength as Long
     DataOffset as Long     '  Offset from beginning of record
End Type


Statement:
Declare Function CreateNamedPipe Lib "kernel32" Alias "CreateNamedPipeA" (ByVal lpName As String, ByVal dwOpenMode As Long, ByVal dwPipeMode As Long, ByVal nMaxInstances As Long, ByVal nOutBufferSize As Long, ByVal nInBufferSize As Long, ByVal nDefaultTimeOut As Long, lpSecurityAttributes As SECURITY_ATTRIBUTES) As Long


Statement:
Declare Function GetNamedPipeHandleState Lib "kernel32" Alias "GetNamedPipeHandleStateA" (ByVal hNamedPipe As Long, lpState As Long, lpCurInstances As Long, lpMaxCollectionCount As Long, lpCollectDataTimeout As Long, ByVal lpUserName As String, ByVal nMaxUserNameSize As Long) As Long


Statement:
Declare Function CallNamedPipe Lib "kernel32" Alias "CallNamedPipeA" (ByVal lpNamedPipeName As String, lpInBuffer As Any, ByVal nInBufferSize As Long, lpOutBuffer As Any, ByVal nOutBufferSize As Long, lpBytesRead As Long, ByVal nTimeOut As Long) As Long


Statement:
Declare Function WaitNamedPipe Lib "kernel32" Alias "WaitNamedPipeA" (ByVal lpNamedPipeName As String, ByVal nTimeOut As Long) As Long


Statement:
Declare Function SetVolumeLabel Lib "kernel32" Alias "SetVolumeLabelA" (ByVal lpRootPathName As String, ByVal lpVolumeName As String) As Long


Statement:
Declare Sub SetFileApisToOEM Lib "kernel32" Alias "SetFileApisToOEM" ()


Statement:
Declare Function GetVolumeInformation Lib "kernel32" Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, ByVal nFileSystemNameSize As Long) As Long


Statement:
Declare Function ClearEventLog Lib "advapi32.dll" Alias "ClearEventLogA" (ByVal hEventLog As Long, ByVal lpBackupFileName As String) As Long


Statement:
Declare Function BackupEventLog Lib "advapi32.dll" Alias "BackupEventLogA" (ByVal hEventLog As Long, ByVal lpBackupFileName As String) As Long


Statement:
Declare Function CloseEventLog Lib "advapi32.dll" Alias "CloseEventLog" (ByVal hEventLog As Long) As Long


Statement:
Declare Function DeregisterEventSource Lib "advapi32.dll" Alias "DeregisterEventSource" (ByVal hEventLog As Long) As Long


Statement:
Declare Function GetNumberOfEventLogRecords Lib "advapi32.dll" Alias "GetNumberOfEventLogRecords" (ByVal hEventLog As Long, NumberOfRecords As Long) As Long


Statement:
Declare Function GetOldestEventLogRecord Lib "advapi32.dll" Alias "GetOldestEventLogRecord" (ByVal hEventLog As Long, OldestRecord As Long) As Long


Statement:
Declare Function OpenEventLog Lib "advapi32.dll" Alias "OpenEventLog" (ByVal lpUNCServerName As String, ByVal lpSourceName As String) As Long


Statement:
Declare Function RegisterEventSource Lib "advapi32.dll" Alias "RegisterEventSourceA" (ByVal lpUNCServerName As String, ByVal lpSourceName As String) As Long


Statement:
Declare Function OpenBackupEventLog Lib "advapi32.dll" Alias "OpenBackupEventLogA" (ByVal lpUNCServerName As String, ByVal lpFileName As String) As Long


Statement:
Declare Function ReadEventLog Lib "advapi32.dll" Alias "ReadEventLogA" (ByVal hEventLog As Long, ByVal dwReadFlags As Long, ByVal dwRecordOffset As Long, lpBuffer As EVENTLOGRECORD, ByVal nNumberOfBytesToRead As Long, pnBytesRead As Long, pnMinNumberOfBytesNeeded As Long) As Long


Statement:
Declare Function ReportEvent Lib "advapi32.dll" Alias "ReportEventA" (ByVal hEventLog As Long, ByVal wType As Long, ByVal wCategory As Long, ByVal dwEventID As Long, lpUserSid As Any, ByVal wNumStrings As Long, ByVal dwDataSize As Long, ByVal lpStrings As Long, lpRawData As Any) As Long


Statement:
Public Const TokenImpersonationLevel = 9


Statement:
Type TOKEN_GROUPS
    GroupCount As Long
    Groups(ANYSIZE_ARRAY) As SID_AND_ATTRIBUTES
End Type


Statement:
Declare Function DuplicateToken Lib "advapi32.dll" Alias "DuplicateToken" (ByVal ExistingTokenHandle As Long, ImpersonationLevel As Integer, DuplicateTokenHandle As Long) As Long


Statement:
Declare Function GetKernelObjectSecurity Lib "advapi32.dll" Alias "GetKernelObjectSecurity" (ByVal Handle As Long, ByVal RequestedInformation As Long, pSecurityDescriptor As SECURITY_DESCRIPTOR, ByVal nLength As Long, lpnLengthNeeded As Long) As Long


Statement:
Declare Function ImpersonateNamedPipeClient Lib "advapi32.dll" Alias "ImpersonateNamedPipeClient" (ByVal hNamedPipe As Long) As Long


Statement:
Declare Function ImpersonateSelf Lib "advapi32.dll" Alias "ImpersonateSelf" (ImpersonationLevel As Integer) As Long


Statement:
Declare Function RevertToSelf Lib "advapi32.dll" Alias "RevertToSelf" () As Long


Statement:
Declare Function AccessCheck Lib "advapi32.dll" Alias "AccessCheck" (pSecurityDescriptor As SECURITY_DESCRIPTOR, ByVal ClientToken As Long, ByVal DesiredAccess As Long, GenericMapping As GENERIC_MAPPING, PrivilegeSet As PRIVILEGE_SET, PrivilegeSetLength As Long, GrantedAccess As Long, ByVal Status As Long) As Long


Statement:
Type TOKEN_PRIVILEGES
	PrivilegeCount As Long
	Privileges(ANYSIZE_ARRAY) As LUID_AND_ATTRIBUTES
End Type


Statement:
Declare Function OpenProcessToken Lib "advapi32.dll" Alias "OpenProcessToken" (ByVal ProcessHandle As Long, ByVal DesiredAccess As Long, TokenHandle As Long) As Long


Statement:
Declare Function OpenThreadToken Lib "advapi32.dll" Alias "OpenThreadToken" (ByVal ThreadHandle As Long, ByVal DesiredAccess As Long, ByVal OpenAsSelf As Long, TokenHandle As Long) As Long


Statement:
Declare Function GetTokenInformation Lib "advapi32.dll" Alias "GetTokenInformation" (ByVal TokenHandle As Long, TokenInformationClass As Integer, TokenInformation As Any, ByVal TokenInformationLength As Long, ReturnLength As Long) As Long


Statement:
Declare Function SetTokenInformation Lib "advapi32.dll" Alias "SetTokenInformation" (ByVal TokenHandle As Long, TokenInformationClass As Integer, TokenInformation As Any, ByVal TokenInformationLength As Long) As Long


Statement:
Declare Function AdjustTokenPrivileges Lib "advapi32.dll" Alias "AdjustTokenPrivileges" (ByVal TokenHandle As Long, ByVal DisableAllPrivileges As Long, NewState As TOKEN_PRIVILEGES, ByVal BufferLength As Long, PreviousState As TOKEN_PRIVILEGES, ReturnLength As Long) As Long


Statement:
Declare Function AdjustTokenGroups Lib "advapi32.dll" Alias "AdjustTokenGroups" (ByVal TokenHandle As Long, ByVal ResetToDefault As Long, NewState As TOKEN_GROUPS, ByVal BufferLength As Long, PreviousState As TOKEN_GROUPS, ReturnLength As Long) As Long


Statement:
Declare Function PrivilegeCheck Lib "advapi32.dll" Alias "PrivilegeCheck" (ByVal ClientToken As Long, RequiredPrivileges As PRIVILEGE_SET, ByVal pfResult As Long) As Long


Statement:
Declare Function AccessCheckAndAuditAlarm Lib "advapi32.dll" Alias "AccessCheckAndAuditAlarmA" (ByVal SubsystemName As String, HandleId As Any, ByVal ObjectTypeName As String, ByVal ObjectName As String, SecurityDescriptor As SECURITY_DESCRIPTOR, ByVal DesiredAccess As Long, GenericMapping As GENERIC_MAPPING, ByVal ObjectCreation As Long, GrantedAccess As Long, ByVal AccessStatus As Long, ByVal pfGenerateOnClose As Long) As Long


Statement:
Declare Function ObjectOpenAuditAlarm Lib "kernel32" Alias "ObjectOpenAuditAlarmA" (ByVal SubsystemName As String, HandleId As Any, ByVal ObjectTypeName As String, ByVal ObjectName As String, pSecurityDescriptor As SECURITY_DESCRIPTOR, ByVal ClientToken As Long, ByVal DesiredAccess As Long, ByVal GrantedAccess As Long, Privileges As PRIVILEGE_SET, ByVal ObjectCreation As Long, ByVal AccessGranted As Long, ByVal GenerateOnClose As Long) As Long


Statement:
Declare Function ObjectPrivilegeAuditAlarm Lib "advapi32.dll" Alias "ObjectPrivilegeAuditAlarmA" (ByVal SubsystemName As String, HandleId As Any, ByVal ClientToken As Long, ByVal DesiredAccess As Long, Privileges As PRIVILEGE_SET, ByVal AccessGranted As Long) As Long


Statement:
Declare Function ObjectCloseAuditAlarm Lib "advapi32.dll" Alias "ObjectCloseAuditAlarmA" (ByVal SubsystemName As String, HandleId As Any, ByVal GenerateOnClose As Long) As Long


Statement:
Declare Function PrivilegedServiceAuditAlarm Lib "advapi32.dll" Alias "PrivilegedServiceAuditAlarmA" (ByVal SubsystemName As String, ByVal ServiceName As String, ByVal ClientToken As Long, Privileges As PRIVILEGE_SET, ByVal AccessGranted As Long) As Long


Statement:
Declare Function IsValidSid Lib "advapi32.dll" Alias "IsValidSid" (pSid As Any) As Long


Statement:
Declare Function EqualSid Lib "advapi32.dll" Alias "EqualSid" (pSid1 As Any, pSid2 As Any) As Long


Statement:
Declare Function EqualPrefixSid Lib "advapi32.dll" Alias "EqualPrefixSid" (pSid1 As Any, pSid2 As Any) As Long


Statement:
Declare Function GetSidLengthRequired Lib "advapi32.dll" Alias "GetSidLengthRequired" (ByVal nSubAuthorityCount As Byte) As Long


Statement:
Declare Function AllocateAndInitializeSid Lib "advapi32.dll" Alias "AllocateAndInitializeSid" (pIdentifierAuthority As SID_IDENTIFIER_AUTHORITY, ByVal nSubAuthorityCount As Byte, ByVal nSubAuthority0 As Long, ByVal nSubAuthority1 As Long, ByVal nSubAuthority2 As Long, ByVal nSubAuthority3 As Long, ByVal nSubAuthority4 As Long, ByVal nSubAuthority5 As Long, ByVal nSubAuthority6 As Long, ByVal nSubAuthority7 As Long, lpPSid As Long) As Long


Statement:
Declare Sub FreeSid Lib "advapi32.dll" Alias "FreeSid" (pSid As Any)


Statement:
Declare Function InitializeSid Lib "advapi32.dll" Alias "InitializeSid" (Sid As Any, pIdentifierAuthority As SID_IDENTIFIER_AUTHORITY, ByVal nSubAuthorityCount As Byte) As Long


Statement:
Declare Function GetSidIdentifierAuthority Lib "advapi32.dll" Alias "GetSidIdentifierAuthority" (pSid As Any) As SID_IDENTIFIER_AUTHORITY


Statement:
Declare Function GetSidSubAuthority Lib "advapi32.dll" Alias "GetSidSubAuthority" (pSid As Any, ByVal nSubAuthority As Long) As Long


Statement:
Declare Function GetSidSubAuthorityCount Lib "advapi32.dll" Alias "GetSidSubAuthorityCount" (pSid As Any) As Byte


Statement:
Declare Function GetLengthSid Lib "advapi32.dll" Alias "GetLengthSid" (pSid As Any) As Long


Statement:
Declare Function CopySid Lib "advapi32.dll" Alias "CopySid" (ByVal nDestinationSidLength As Long, pDestinationSid As Any, pSourceSid As Any) As Long


Statement:
Declare Function AreAllAccessesGranted Lib "advapi32.dll" Alias "AreAllAccessesGranted" (ByVal GrantedAccess As Long, ByVal DesiredAccess As Long) As Long


Statement:
Declare Function AreAnyAccessesGranted Lib "advapi32.dll" Alias "AreAnyAccessesGranted" (ByVal GrantedAccess As Long, ByVal DesiredAccess As Long) As Long


Statement:
Declare Sub MapGenericMask Lib "advapi32.dll" Alias "MapGenericMask" (AccessMask As Long, GenericMapping As GENERIC_MAPPING)


Statement:
Declare Function IsValidAcl Lib "advapi32.dll" Alias "IsValidAcl" (pAcl As ACL) As Long


Statement:
Declare Function InitializeAcl Lib "advapi32.dll" Alias "InitializeAcl" (pAcl As ACL, ByVal nAclLength As Long, ByVal dwAclRevision As Long) As Long


Statement:
Declare Function GetAclInformation Lib "advapi32.dll" Alias "GetAclInformation" (pAcl As ACL, pAclInformation As Any, ByVal nAclInformationLength As Long, ByVal dwAclInformationClass As Integer) As Long


Statement:
Declare Function SetAclInformation Lib "advapi32.dll" Alias "SetAclInformation" (pAcl As ACL, pAclInformation As Any, ByVal nAclInformationLength As Long, ByVal dwAclInformationClass As Integer) As Long


Statement:
Declare Function AddAce Lib "advapi32.dll" Alias "AddAce" (pAcl As ACL, ByVal dwAceRevision As Long, ByVal dwStartingAceIndex As Long, pAceList As Any, ByVal nAceListLength As Long) As Long


Statement:
Declare Function DeleteAce Lib "advapi32.dll" Alias "DeleteAce" (pAcl As ACL, ByVal dwAceIndex As Long) As Long


Statement:
Declare Function GetAce Lib "advapi32.dll" Alias "GetAce" (pAcl As ACL, ByVal dwAceIndex As Long, pAce As Any) As Long


Statement:
Declare Function AddAccessAllowedAce Lib "advapi32.dll" Alias "AddAccessAllowedAce" (pAcl As ACL, ByVal dwAceRevision As Long, ByVal AccessMask As Long, pSid As Any) As Long


Statement:
Declare Function AddAccessDeniedAce Lib "advapi32.dll" Alias "AddAccessDeniedAce" (pAcl As ACL, ByVal dwAceRevision As Long, ByVal AccessMask As Long, pSid As Any) As Long


Statement:
Declare Function AddAuditAccessAce Lib "advapi32.dll" Alias "AddAuditAccessAce" (pAcl As ACL, ByVal dwAceRevision As Long, ByVal dwAccessMask As Long, pSid As Any, ByVal bAuditSuccess As Long, ByVal bAuditFailure As Long) As Long


Statement:
Declare Function FindFirstFreeAce Lib "advapi32.dll" Alias "FindFirstFreeAce" (pAcl As ACL, pAce As Long) As Long


Statement:
Declare Function InitializeSecurityDescriptor Lib "advapi32.dll" Alias "InitializeSecurityDescriptor" (pSecurityDescriptor As SECURITY_DESCRIPTOR, ByVal dwRevision As Long) As Long


Statement:
Declare Function IsValidSecurityDescriptor Lib "advapi32.dll" Alias "IsValidSecurityDescriptor" (pSecurityDescriptor As SECURITY_DESCRIPTOR) As Long


Statement:
Declare Function GetSecurityDescriptorLength Lib "advapi32.dll" Alias "GetSecurityDescriptorLength" (pSecurityDescriptor As SECURITY_DESCRIPTOR) As Long


Statement:
Declare Function GetSecurityDescriptorControl Lib "advapi32.dll" Alias "GetSecurityDescriptorControl" (pSecurityDescriptor As SECURITY_DESCRIPTOR, pControl As Integer, lpdwRevision As Long) As Long


Statement:
Declare Function SetSecurityDescriptorDacl Lib "advapi32.dll" Alias "SetSecurityDescriptorDacl" (pSecurityDescriptor As SECURITY_DESCRIPTOR, ByVal bDaclPresent As Long, pDacl As ACL, ByVal bDaclDefaulted As Long) As Long


Statement:
Declare Function GetSecurityDescriptorDacl Lib "advapi32.dll" Alias "GetSecurityDescriptorDacl" (pSecurityDescriptor As SECURITY_DESCRIPTOR, lpbDaclPresent As Long, pDacl As ACL, lpbDaclDefaulted As Long) As Long


Statement:
Declare Function SetSecurityDescriptorSacl Lib "advapi32.dll" Alias "SetSecurityDescriptorSacl" (pSecurityDescriptor As SECURITY_DESCRIPTOR, ByVal bSaclPresent As Long, pSacl As ACL, ByVal bSaclDefaulted As Long) As Long


Statement:
Declare Function GetSecurityDescriptorSacl Lib "advapi32.dll" Alias "GetSecurityDescriptorSacl" (pSecurityDescriptor As SECURITY_DESCRIPTOR, ByVal lpbSaclPresent As Long, pSacl As ACL, ByVal lpbSaclDefaulted As Long) As Long


Statement:
Declare Function SetSecurityDescriptorOwner Lib "advapi32.dll" Alias "SetSecurityDescriptorOwner" (pSecurityDescriptor As SECURITY_DESCRIPTOR, pOwner As Any, ByVal bOwnerDefaulted As Long) As Long


Statement:
Declare Function GetSecurityDescriptorOwner Lib "advapi32.dll" Alias "GetSecurityDescriptorOwner" (pSecurityDescriptor As SECURITY_DESCRIPTOR, pOwner As Any, ByVal lpbOwnerDefaulted As Long) As Long


Statement:
Declare Function SetSecurityDescriptorGroup Lib "advapi32.dll" Alias "SetSecurityDescriptorGroup" (pSecurityDescriptor As SECURITY_DESCRIPTOR, pGroup As Any, ByVal bGroupDefaulted As Long) As Long


Statement:
Declare Function GetSecurityDescriptorGroup Lib "advapi32.dll" Alias "GetSecurityDescriptorGroup" (pSecurityDescriptor As SECURITY_DESCRIPTOR, pGroup As Any, ByVal lpbGroupDefaulted As Long) As Long


Statement:
Declare Function CreatePrivateObjectSecurity Lib "advapi32.dll" Alias "CreatePrivateObjectSecurity" (ParentDescriptor As SECURITY_DESCRIPTOR, CreatorDescriptor As SECURITY_DESCRIPTOR, NewDescriptor As SECURITY_DESCRIPTOR, ByVal IsDirectoryObject As Long, ByVal Token As Long, GenericMapping As GENERIC_MAPPING) As Long


Statement:
Declare Function SetPrivateObjectSecurity Lib "advapi32.dll" Alias "SetPrivateObjectSecurity" (ByVal SecurityInformation As Long, ModificationDescriptor As SECURITY_DESCRIPTOR, ObjectsSecurityDescriptor As SECURITY_DESCRIPTOR, GenericMapping As GENERIC_MAPPING, ByVal Token As Long) As Long


Statement:
Declare Function GetPrivateObjectSecurity Lib "advapi32.dll" Alias "GetPrivateObjectSecurity" (ObjectDescriptor As SECURITY_DESCRIPTOR, ByVal SecurityInformation As Long, ResultantDescriptor As SECURITY_DESCRIPTOR, ByVal DescriptorLength As Long, ReturnLength As Long) As Long


Statement:
Declare Function DestroyPrivateObjectSecurity Lib "advapi32.dll" Alias "DestroyPrivateObjectSecurity" (ObjectDescriptor As SECURITY_DESCRIPTOR) As Long


Statement:
Declare Function MakeSelfRelativeSD Lib "advapi32.dll" Alias "MakeSelfRelativeSD" (pAbsoluteSecurityDescriptor As SECURITY_DESCRIPTOR, pSelfRelativeSecurityDescriptor As SECURITY_DESCRIPTOR, lpdwBufferLength As Long) As Long


Statement:
Declare Function MakeAbsoluteSD Lib "advapi32.dll" Alias "MakeAbsoluteSD" (pSelfRelativeSecurityDescriptor As SECURITY_DESCRIPTOR, pAbsoluteSecurityDescriptor As SECURITY_DESCRIPTOR, lpdwAbsoluteSecurityDescriptorSize As Long, pDacl As ACL, lpdwDaclSize As Long, pSacl As ACL, lpdwSaclSize As Long, pOwner As Any, lpdwOwnerSize As Long, pPrimaryGroup As Any, lpdwPrimaryGroupSize As Long) As Long


Statement:
Declare Function SetFileSecurity Lib "advapi32.dll" Alias "SetFileSecurityA" (ByVal lpFileName As String, ByVal SecurityInformation As Long, pSecurityDescriptor As SECURITY_DESCRIPTOR) As Long


Statement:
Declare Function GetFileSecurity Lib "advapi32.dll" Alias "GetFileSecurityA" (ByVal lpFileName As String, ByVal RequestedInformation As Long, pSecurityDescriptor As SECURITY_DESCRIPTOR, ByVal nLength As Long, lpnLengthNeeded As Long) As Long


Statement:
Declare Function SetKernelObjectSecurity Lib "advapi32.dll" Alias "SetKernelObjectSecurity" (ByVal Handle As Long, ByVal SecurityInformation As Long, SecurityDescriptor As SECURITY_DESCRIPTOR) As Long


Statement:
Declare Function FindFirstChangeNotification Lib "kernel32" Alias "FindFirstChangeNotificationA" (ByVal lpPathName As String, ByVal bWatchSubtree As Long, ByVal dwNotifyFilter As Long) As Long


Statement:
Declare Function FindNextChangeNotification Lib "kernel32" Alias "FindNextChangeNotification" (ByVal hChangeHandle As Long) As Long


Statement:
Declare Function FindCloseChangeNotification Lib "kernel32" Alias "FindCloseChangeNotification" (ByVal hChangeHandle As Long) As Long


Statement:
Declare Function VirtualLock Lib "kernel32" Alias "VirtualLock" (lpAddress As Any, ByVal dwSize As Long) As Long


Statement:
Declare Function VirtualUnlock Lib "kernel32" Alias "VirtualUnlock" (lpAddress As Any, ByVal dwSize As Long) As Long


Statement:
Declare Function MapViewOfFileEx Lib "kernel32" Alias "MapViewOfFileEx" (ByVal hFileMappingObject As Long, ByVal dwDesiredAccess As Long, ByVal dwFileOffsetHigh As Long, ByVal dwFileOffsetLow As Long, ByVal dwNumberOfBytesToMap As Long, lpBaseAddress As Any) As Long


Statement:
Declare Function SetPriorityClass Lib "kernel32" Alias "SetPriorityClass" (ByVal hProcess As Long, ByVal dwPriorityClass As Long) As Long


Statement:
Declare Function GetPriorityClass Lib "kernel32" Alias "GetPriorityClass" (ByVal hProcess As Long) As Long


Statement:
Type CONTEXT
	FltF0 As Double
	FltF1 As Double
	FltF2 As Double
	FltF3 As Double
	FltF4 As Double
	FltF5 As Double
	FltF6 As Double
	FltF7 As Double
	FltF8 As Double
	FltF9 As Double
	FltF10 As Double
	FltF11 As Double
	FltF12 As Double
	FltF13 As Double
	FltF14 As Double
	FltF15 As Double
	FltF16 As Double
	FltF17 As Double
	FltF18 As Double
	FltF19 As Double
	FltF20 As Double
	FltF21 As Double
	FltF22 As Double
	FltF23 As Double
	FltF24 As Double
	FltF25 As Double
	FltF26 As Double
	FltF27 As Double
	FltF28 As Double
	FltF29 As Double
	FltF30 As Double
	FltF31 As Double

	IntV0 As Double
	IntT0 As Double
	IntT1 As Double
	IntT2 As Double
	IntT3 As Double
	IntT4 As Double
	IntT5 As Double
	IntT6 As Double
	IntT7 As Double
	IntS0 As Double
	IntS1 As Double
	IntS2 As Double
	IntS3 As Double
	IntS4 As Double
	IntS5 As Double
	IntFp As Double
	IntA0 As Double
	IntA1 As Double
	IntA2 As Double
	IntA3 As Double
	IntA4 As Double
	IntA5 As Double
	IntT8 As Double
	IntT9 As Double
	IntT10 As Double
	IntT11 As Double
	IntRa As Double
	IntT12 As Double
	IntAt As Double
	IntGp As Double
	IntSp As Double
	IntZero As Double

	Fpcr As Double
	SoftFpcr As Double

	Fir As Double
	Psr As Long

	ContextFlags As Long
	Fill(4) As Long
End Type


Statement:
Type EXCEPTION_POINTERS
    pExceptionRecord As EXCEPTION_RECORD
    ContextRecord As CONTEXT
End Type


DisplayName:
LDT_BYTES	' Defined for use in LDT_ENTRY Type

Statement:
Type LDT_BYTES	' Defined for use in LDT_ENTRY Type
	BaseMid As Byte
	Flags1 As Byte
	Flags2 As Byte
	BaseHi As Byte
End Type


Statement:
Type LDT_ENTRY
	LimitLow As Integer
	BaseLow As Integer
	HighWord As Long	' Can use LDT_BYTES Type
End Type


Statement:
Declare Sub FatalExit Lib "kernel32" Alias "FatalExit" (ByVal code As Long)


Statement:
Declare Function GetEnvironmentStrings Lib "kernel32" Alias "GetEnvironmentStringsA" () As String


Statement:
Declare Sub RaiseException Lib "kernel32" Alias "RaiseException" (ByVal dwExceptionCode As Long, ByVal dwExceptionFlags As Long, ByVal nNumberOfArguments As Long, lpArguments As Long)


Statement:
Declare Function UnhandledExceptionFilter Lib "kernel32" Alias "UnhandledExceptionFilter" (ExceptionInfo As EXCEPTION_POINTERS) As Long


Statement:
Declare Function CreateThread Lib "kernel32" Alias "CreateThread" (lpThreadAttributes As SECURITY_ATTRIBUTES, ByVal dwStackSize As Long, lpStartAddress As Long, lpParameter As Any, ByVal dwCreationFlags As Long, lpThreadId As Long) As Long


Statement:
Declare Function CreateRemoteThread Lib "kernel32" Alias "CreateRemoteThread" (ByVal hProcess As Long, lpThreadAttributes As SECURITY_ATTRIBUTES, ByVal dwStackSize As Long, lpStartAddress As Long, lpParameter As Any, ByVal dwCreationFlags As Long, lpThreadId As Long) As Long


Statement:
Declare Function GetCurrentThread Lib "kernel32" Alias "GetCurrentThread" () As Long


Statement:
Declare Function GetCurrentThreadId Lib "kernel32" Alias "GetCurrentThreadId" () As Long


Statement:
Declare Function SetThreadPriority Lib "kernel32" Alias "SetThreadPriority" (ByVal hThread As Long, ByVal nPriority As Long) As Long


Statement:
Declare Function GetThreadPriority Lib "kernel32" Alias "GetThreadPriority" (ByVal hThread As Long) As Long


Statement:
Declare Function GetThreadTimes Lib "kernel32" Alias "GetThreadTimes" (ByVal hThread As Long, lpCreationTime As FILETIME, lpExitTime As FILETIME, lpKernelTime As FILETIME, lpUserTime As FILETIME) As Long


Statement:
Declare Sub ExitThread Lib "kernel32" Alias "ExitThread" (ByVal dwExitCode As Long)


Statement:
Declare Function TerminateThread Lib "kernel32" Alias "TerminateThread" (ByVal hThread As Long, ByVal dwExitCode As Long) As Long


Statement:
Declare Function GetExitCodeThread Lib "kernel32" Alias "GetExitCodeThread" (ByVal hThread As Long, lpExitCode As Long) As Long


Statement:
Declare Function GetThreadSelectorEntry Lib "kernel32" Alias "GetThreadSelectorEntry" (ByVal hThread As Long, ByVal dwSelector As Long, lpSelectorEntry As LDT_ENTRY) As Long


Statement:
Declare Function SetCommState Lib "kernel32" Alias "SetCommState" (ByVal hCommDev As Long, lpDCB As DCB) As Long


Statement:
Declare Function SetCommTimeouts Lib "kernel32" Alias "SetCommTimeouts" (ByVal hFile As Long, lpCommTimeouts As COMMTIMEOUTS) As Long


Statement:
Declare Function GetCommState Lib "kernel32" Alias "GetCommState" (ByVal nCid As Long, lpDCB As DCB) As Long


Statement:
Declare Function GetCommTimeouts Lib "kernel32" Alias "GetCommTimeouts" (ByVal hFile As Long, lpCommTimeouts As COMMTIMEOUTS) As Long


Statement:
Declare Function PurgeComm Lib "kernel32" Alias "PurgeComm" (ByVal hFile As Long, ByVal dwFlags As Long) As Long


Statement:
Declare Function BuildCommDCB Lib "kernel32" Alias "BuildCommDCBA" (ByVal lpDef As String, lpDCB As DCB) As Long


Statement:
Declare Function BuildCommDCBAndTimeouts Lib "kernel32" Alias "BuildCommDCBAndTimeoutsA" (ByVal lpDef As String, lpDCB As DCB, lpCommTimeouts As COMMTIMEOUTS) As Long


Statement:
Declare Function TransmitCommChar Lib "kernel32" Alias "TransmitCommChar" (ByVal nCid As Long, ByVal cChar As Byte) As Long


Statement:
Declare Function SetCommBreak Lib "kernel32" Alias "SetCommBreak" (ByVal nCid As Long) As Long


Statement:
Declare Function SetCommMask Lib "kernel32" Alias "SetCommMask" (ByVal hFile As Long, ByVal dwEvtMask As Long) As Long


Statement:
Declare Function ClearCommBreak Lib "kernel32" Alias "ClearCommBreak" (ByVal nCid As Long) As Long


Statement:
Declare Function ClearCommError Lib "kernel32" Alias "ClearCommError" (ByVal hFile As Long, lpErrors As Long, lpStat As COMSTAT) As Long


Statement:
Declare Function SetupComm Lib "kernel32" Alias "SetupComm" (ByVal hFile As Long, ByVal dwInQueue As Long, ByVal dwOutQueue As Long) As Long


Statement:
Declare Function EscapeCommFunction Lib "kernel32" Alias "EscapeCommFunction" (ByVal nCid As Long, ByVal nFunc As Long) As Long


Statement:
Declare Function GetCommMask Lib "kernel32" Alias "GetCommMask" (ByVal hFile As Long, lpEvtMask As Long) As Long


Statement:
Declare Function GetCommProperties Lib "kernel32" Alias "GetCommProperties" (ByVal hFile As Long, lpCommProp As COMMPROP) As Long


Statement:
Declare Function GetCommModemStatus Lib "kernel32" Alias "GetCommModemStatus" (ByVal hFile As Long, lpModemStat As Long) As Long


Statement:
Declare Function WaitCommEvent Lib "kernel32" Alias "WaitCommEvent" (ByVal hFile As Long, lpEvtMask As Long, lpOverlapped As OVERLAPPED) As Long


Statement:
Declare Function SetTapePosition Lib "kernel32" Alias "SetTapePosition" (ByVal hDevice As Long, ByVal dwPositionMethod As Long, ByVal dwPartition As Long, ByVal dwOffsetLow As Long, ByVal dwOffsetHigh As Long, ByVal bimmediate As Long) As Long


Statement:
Declare Function GetTapePosition Lib "kernel32" Alias "GetTapePosition" (ByVal hDevice As Long, ByVal dwPositionType As Long, lpdwPartition As Long, lpdwOffsetLow As Long, lpdwOffsetHigh As Long) As Long


Statement:
Declare Function PrepareTape Lib "kernel32" Alias "PrepareTape" (ByVal hDevice As Long, ByVal dwOperation As Long, ByVal bimmediate As Long) As Long


Statement:
Declare Function EraseTape Lib "kernel32" Alias "EraseTape" (ByVal hDevice As Long, ByVal dwEraseType As Long, ByVal bimmediate As Long) As Long


Statement:
Declare Function CreateTapePartition Lib "kernel32" Alias "CreateTapePartition" (ByVal hDevice As Long, ByVal dwPartitionMethod As Long, ByVal dwCount As Long, ByVal dwSize As Long) As Long


Statement:
Declare Function WriteTapemark Lib "kernel32" Alias "WriteTapemark" (ByVal hDevice As Long, ByVal dwTapemarkType As Long, ByVal dwTapemarkCount As Long, ByVal bimmediate As Long) As Long


Statement:
Declare Function GetTapeStatus Lib "kernel32" Alias "GetTapeStatus" (ByVal hDevice As Long) As Long


Statement:
Declare Function GetTapeParameters Lib "kernel32" Alias "GetTapeParameters" (ByVal hDevice As Long, ByVal dwOperation As Long, lpdwSize As Long, lpTapeInformation As Any) As Long


Statement:
Public Const GET_TAPE_MEDIA_INFORMATION = 0


Statement:
Public Const GET_TAPE_DRIVE_INFORMATION = 1


Statement:
Declare Function SetTapeParameters Lib "kernel32" Alias "SetTapeParameters" (ByVal hDevice As Long, ByVal dwOperation As Long, lpTapeInformation As Any) As Long


Statement:
Public Const SET_TAPE_MEDIA_INFORMATION = 0


Statement:
Public Const SET_TAPE_DRIVE_INFORMATION = 1


Statement:
Declare Function Beep Lib "kernel32" Alias "Beep" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long


Statement:
Declare Function MulDiv Lib "kernel32" Alias "MulDiv" (ByVal nNumber As Long, ByVal nNumerator As Long, ByVal nDenominator As Long) As Long


Statement:
Declare Sub GetSystemTime Lib "kernel32" Alias "GetSystemTime" (lpSystemTime As SYSTEMTIME)


Statement:
Declare Function SetSystemTime Lib "kernel32" Alias "SetSystemTime" (lpSystemTime As SYSTEMTIME) As Long


Statement:
Declare Sub GetLocalTime Lib "kernel32" Alias "GetLocalTime" (lpSystemTime As SYSTEMTIME)


Statement:
Declare Function SetLocalTime Lib "kernel32" Alias "SetLocalTime" (lpSystemTime As SYSTEMTIME) As Long


Statement:
Declare Sub GetSystemInfo Lib "kernel32" Alias "GetSystemInfo" (lpSystemInfo As SYSTEM_INFO)


Statement:
Type TIME_ZONE_INFORMATION
        Bias As Long
        StandardName(32) As Integer
        StandardDate As SYSTEMTIME
        StandardBias As Long
        DaylightName(32) As Integer
        DaylightDate As SYSTEMTIME
        DaylightBias As Long
End Type


Statement:
Declare Function GetTimeZoneInformation Lib "kernel32" Alias "GetTimeZoneInformation" (lpTimeZoneInformation As TIME_ZONE_INFORMATION) As Long


Statement:
Declare Function SetTimeZoneInformation Lib "kernel32" Alias "SetTimeZoneInformation" (lpTimeZoneInformation As TIME_ZONE_INFORMATION) As Long


Statement:
Declare Function SystemTimeToFileTime Lib "kernel32" Alias "SystemTimeToFileTime" (lpSystemTime As SYSTEMTIME, lpFileTime As FILETIME) As Long


Statement:
Declare Function FileTimeToLocalFileTime Lib "kernel32" Alias "FileTimeToLocalFileTime" (lpFileTime As FILETIME, lpLocalFileTime As FILETIME) As Long


Statement:
Declare Function LocalFileTimeToFileTime Lib "kernel32" Alias "LocalFileTimeToFileTime" (lpLocalFileTime As FILETIME, lpFileTime As FILETIME) As Long


Statement:
Declare Function FileTimeToSystemTime Lib "kernel32" Alias "FileTimeToSystemTime" (lpFileTime As FILETIME, lpSystemTime As SYSTEMTIME) As Long


Statement:
Declare Function CompareFileTime Lib "kernel32" Alias "CompareFileTime" (lpFileTime1 As FILETIME, lpFileTime2 As FILETIME) As Long


Statement:
Declare Function FileTimeToDosDateTime Lib "kernel32" Alias "FileTimeToDosDateTime" (lpFileTime As FILETIME, ByVal lpFatDate As Long, ByVal lpFatTime As Long) As Long


Statement:
Declare Function DosDateTimeToFileTime Lib "kernel32" Alias "DosDateTimeToFileTime" (ByVal wFatDate As Long, ByVal wFatTime As Long, lpFileTime As FILETIME) As Long


Statement:
Declare Function GetTickCount Lib "kernel32" Alias "GetTickCount" () As Long


Statement:
Declare Function FormatMessage Lib "kernel32" Alias "FormatMessageA" (ByVal dwFlags As Long, lpSource As Any, ByVal dwMessageId As Long, ByVal dwLanguageId As Long, ByVal lpBuffer As String, ByVal nSize As Long, Arguments As Long) As Long


Statement:
Public Const FORMAT_MESSAGE_ALLOCATE_BUFFER = &H100


Statement:
Public Const FORMAT_MESSAGE_IGNORE_INSERTS = &H200


Statement:
Public Const FORMAT_MESSAGE_FROM_STRING = &H400


Statement:
Public Const FORMAT_MESSAGE_FROM_HMODULE = &H800


Statement:
Public Const FORMAT_MESSAGE_FROM_SYSTEM = &H1000


Statement:
Public Const FORMAT_MESSAGE_ARGUMENT_ARRAY = &H2000


Statement:
Public Const FORMAT_MESSAGE_MAX_WIDTH_MASK = &HFF


Statement:
Declare Function CreatePipe Lib "kernel32" Alias "CreatePipe" (phReadPipe As Long, phWritePipe As Long, lpPipeAttributes As SECURITY_ATTRIBUTES, ByVal nSize As Long) As Long


Statement:
Declare Function ConnectNamedPipe Lib "kernel32" Alias "ConnectNamedPipe" (ByVal hNamedPipe As Long, lpOverlapped As OVERLAPPED) As Long


Statement:
Declare Function DisconnectNamedPipe Lib "kernel32" Alias "DisconnectNamedPipe" (ByVal hNamedPipe As Long) As Long


Statement:
Declare Function SetNamedPipeHandleState Lib "kernel32" Alias "SetNamedPipeHandleState" (ByVal hNamedPipe As Long, lpMode As Long, lpMaxCollectionCount As Long, lpCollectDataTimeout As Long) As Long


Statement:
Declare Function GetNamedPipeInfo Lib "kernel32" Alias "GetNamedPipeInfo" (ByVal hNamedPipe As Long, lpFlags As Long, lpOutBufferSize As Long, lpInBufferSize As Long, lpMaxInstances As Long) As Long


Statement:
Declare Function PeekNamedPipe Lib "kernel32" Alias "PeekNamedPipe" (ByVal hNamedPipe As Long, lpBuffer As Any, ByVal nBufferSize As Long, lpBytesRead As Long, lpTotalBytesAvail As Long, lpBytesLeftThisMessage As Long) As Long


Statement:
Declare Function TransactNamedPipe Lib "kernel32" Alias "TransactNamedPipe" (ByVal hNamedPipe As Long, lpInBuffer As Any, ByVal nInBufferSize As Long, lpOutBuffer As Any, ByVal nOutBufferSize As Long, lpBytesRead As Long, lpOverlapped As OVERLAPPED) As Long


Statement:
Declare Function CreateMailslot Lib "kernel32" Alias "CreateMailslotA" (ByVal lpName As String, ByVal nMaxMessageSize As Long, ByVal lReadTimeout As Long, lpSecurityAttributes As SECURITY_ATTRIBUTES) As Long


Statement:
Declare Function GetMailslotInfo Lib "kernel32" Alias "GetMailslotInfo" (ByVal hMailslot As Long, lpMaxMessageSize As Long, lpNextSize As Long, lpMessageCount As Long, lpReadTimeout As Long) As Long


Statement:
Declare Function SetMailslotInfo Lib "kernel32" Alias "SetMailslotInfo" (ByVal hMailslot As Long, ByVal lReadTimeout As Long) As Long


Statement:
Declare Function MapViewOfFile Lib "kernel32" Alias "MapViewOfFile" (ByVal hFileMappingObject As Long, ByVal dwDesiredAccess As Long, ByVal dwFileOffsetHigh As Long, ByVal dwFileOffsetLow As Long, ByVal dwNumberOfBytesToMap As Long) As Long


Statement:
Declare Function FlushViewOfFile Lib "kernel32" Alias "FlushViewOfFile" (lpBaseAddress As Any, ByVal dwNumberOfBytesToFlush As Long) As Long


Statement:
Declare Function UnmapViewOfFile Lib "kernel32" Alias "UnmapViewOfFile" (lpBaseAddress As Any) As Long


Statement:
Declare Function lstrcmp Lib "kernel32" Alias "lstrcmpA" (ByVal lpString1 As String, ByVal lpString2 As String) As Long


Statement:
Declare Function lstrcmpi Lib "kernel32" Alias "lstrcmpiA" (ByVal lpString1 As String, ByVal lpString2 As String) As Long


Statement:
Declare Function lstrlen Lib "kernel32" Alias "lstrlenA" (ByVal lpString As String) As Long


Statement:
Declare Function lopen Lib "kernel32" Alias "_lopen" (ByVal lpPathName As String, ByVal iReadWrite As Long) As Long


Statement:
Declare Function lclose Lib "kernel32" Alias "_lclose" (ByVal hFile As Long) As Long


Statement:
Declare Function lcreat Lib "kernel32" Alias "_lcreat" (ByVal lpPathName As String, ByVal iAttribute As Long) As Long


Statement:
Declare Function llseek Lib "kernel32" Alias "_llseek" (ByVal hFile As Long, ByVal lOffset As Long, ByVal iOrigin As Long) As Long


Statement:
Declare Function lread Lib "kernel32" Alias "_lread" (ByVal hFile As Long, lpBuffer As Any, ByVal wBytes As Long) As Long


Statement:
Declare Function lwrite Lib "kernel32" Alias "_lwrite" (ByVal hFile As Long, ByVal lpBuffer As String, ByVal wBytes As Long) As Long


Statement:
Declare Function hread Lib "kernel32" Alias "_hread" (ByVal hFile As Long, lpBuffer As Any, ByVal lBytes As Long) As Long


Statement:
Declare Function hwrite Lib "kernel32" Alias "_hwrite" (ByVal hFile As Long, ByVal lpBuffer As String, ByVal lBytes As Long) As Long


Statement:
Declare Function TlsAlloc Lib "kernel32" Alias "TlsAlloc" () As Long


Statement:
Public Const TLS_OUT_OF_INDEXES = &HFFFF


Statement:
Declare Function TlsGetValue Lib "kernel32" Alias "TlsGetValue" (ByVal dwTlsIndex As Long) As Long


Statement:
Declare Function TlsSetValue Lib "kernel32" Alias "TlsSetValue" (ByVal dwTlsIndex As Long, lpTlsValue As Any) As Long


Statement:
Declare Function TlsFree Lib "kernel32" Alias "TlsFree" (ByVal dwTlsIndex As Long) As Long


Statement:
Declare Function SleepEx Lib "kernel32" Alias "SleepEx" (ByVal dwMilliseconds As Long, ByVal bAlertable As Long) As Long


Statement:
Declare Function WaitForSingleObjectEx Lib "kernel32" Alias "WaitForSingleObjectEx" (ByVal hHandle As Long, ByVal dwMilliseconds As Long, ByVal bAlertable As Long) As Long


Statement:
Declare Function WaitForMultipleObjectsEx Lib "kernel32" Alias "WaitForMultipleObjectsEx" (ByVal nCount As Long, lpHandles As Long, ByVal bWaitAll As Long, ByVal dwMilliseconds As Long, ByVal bAlertable As Long) As Long


Statement:
Declare Function BackupRead Lib "kernel32" Alias "BackupRead" (ByVal hFile As Long, lpBuffer As Byte, ByVal nNumberOfBytesToRead As Long, lpNumberOfBytesRead As Long, ByVal bAbort As Long, ByVal bProcessSecurity As Long, lpContext As Any) As Long


Statement:
Declare Function BackupSeek Lib "kernel32" Alias "BackupSeek" (ByVal hFile As Long, ByVal dwLowBytesToSeek As Long, ByVal dwHighBytesToSeek As Long, lpdwLowByteSeeked As Long, lpdwHighByteSeeked As Long, lpContext As Long) As Long


Statement:
Declare Function BackupWrite Lib "kernel32" Alias "BackupWrite" (ByVal hFile As Long, lpBuffer As Byte, ByVal nNumberOfBytesToWrite As Long, lpNumberOfBytesWritten As Long, ByVal bAbort As Long, ByVal bProcessSecurity As Long, lpContext As Long) As Long


Statement:
Type WIN32_STREAM_ID
        dwStreamID As Long
        dwStreamAttributes As Long
        dwStreamSizeLow As Long
        dwStreamSizeHigh As Long
        dwStreamNameSize As Long
        cStreamName As Byte
End Type


Statement:
Public Const BACKUP_ALTERNATE_DATA = &H4


Statement:
Public Const STREAM_MODIFIED_WHEN_READ = &H1


Statement:
Public Const STREAM_CONTAINS_SECURITY = &H2


Statement:
Public Const STARTF_USEFILLATTRIBUTE = &H10


Statement:
Public Const STARTF_RUNFULLSCREEN = &H20        '  ignored for non-x86 platforms


Statement:
Public Const STARTF_FORCEONFEEDBACK = &H40


Statement:
Public Const STARTF_FORCEOFFFEEDBACK = &H80


Statement:
Public Const STARTF_USESTDHANDLES = &H100


Statement:
Type STARTUPINFO
        cb As Long
        lpReserved As Long
        lpDesktop As Long
        lpTitle As Long
        dwX As Long
        dwY As Long
        dwXSize As Long
        dwYSize As Long
        dwXCountChars As Long
        dwYCountChars As Long
        dwFillAttribute As Long
        dwFlags As Long
        wShowWindow As Integer
        cbReserved2 As Integer
        lpReserved2 As Byte
        hStdInput As Long
        hStdOutput As Long
        hStdError As Long
End Type


Statement:
Type WIN32_FIND_DATA
        dwFileAttributes As Long
        ftCreationTime As FILETIME
        ftLastAccessTime As FILETIME
        ftLastWriteTime As FILETIME
        nFileSizeHigh As Long
        nFileSizeLow As Long
        dwReserved0 As Long
        dwReserved1 As Long
        cFileName As String * MAX_PATH
        cAlternate As String * 14
End Type


Statement:
Declare Function CreateMutex Lib "kernel32" Alias "CreateMutexA" (lpMutexAttributes As SECURITY_ATTRIBUTES, ByVal bInitialOwner As Long, ByVal lpName As String) As Long


Statement:
Declare Function OpenMutex Lib "kernel32" Alias "OpenMutexA" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal lpName As String) As Long


Statement:
Declare Function CreateEvent Lib "kernel32" Alias "CreateEventA" (lpEventAttributes As SECURITY_ATTRIBUTES, ByVal bManualReset As Long, ByVal bInitialState As Long, ByVal lpName As String) As Long


Statement:
Declare Function OpenEvent Lib "kernel32" Alias "OpenEventA" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal lpName As String) As Long


Statement:
Declare Function CreateSemaphore Lib "kernel32" Alias "CreateSemaphoreA" (lpSemaphoreAttributes As SECURITY_ATTRIBUTES, ByVal lInitialCount As Long, ByVal lMaximumCount As Long, ByVal lpName As String) As Long


Statement:
Declare Function OpenSemaphore Lib "kernel32" Alias "OpenSemaphoreA" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal lpName As String) As Long


Statement:
Declare Function CreateFileMapping Lib "kernel32" Alias "CreateFileMappingA" (ByVal hFile As Long, lpFileMappigAttributes As SECURITY_ATTRIBUTES, ByVal flProtect As Long, ByVal dwMaximumSizeHigh As Long, ByVal dwMaximumSizeLow As Long, ByVal lpName As String) As Long


Statement:
Declare Function OpenFileMapping Lib "kernel32" Alias "OpenFileMappingA" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal lpName As String) As Long


Statement:
Declare Function GetLogicalDriveStrings Lib "kernel32" Alias "GetLogicalDriveStringsA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long


Statement:
Declare Function IsBadReadPtr Lib "kernel32" Alias "IsBadReadPtr" (lp As Any, ByVal ucb As Long) As Long


Statement:
Declare Function IsBadWritePtr Lib "kernel32" Alias "IsBadWritePtr" (lp As Any, ByVal ucb As Long) As Long


Statement:
Declare Function IsBadStringPtr Lib "kernel32" Alias "IsBadStringPtrA" (ByVal lpsz As String, ByVal ucchMax As Long) As Long


Statement:
Declare Function IsBadHugeReadPtr Lib "kernel32" Alias "IsBadHugeReadPtr" (lp As Any, ByVal ucb As Long) As Long


Statement:
Declare Function IsBadHugeWritePtr Lib "kernel32" Alias "IsBadHugeWritePtr" (lp As Any, ByVal ucb As Long) As Long


Statement:
Declare Function LookupAccountSid Lib "advapi32.dll" Alias "LookupAccountSidA" (ByVal lpSystemName As String, Sid As Any, ByVal name As String, cbName As Long, ByVal ReferencedDomainName As String, cbReferencedDomainName As Long, peUse As Integer) As Long


Statement:
Declare Function LookupAccountName Lib "advapi32.dll" Alias "LookupAccountNameA" (ByVal lpSystemName As String, ByVal lpAccountName As String, Sid As Long, cbSid As Long, ByVal ReferencedDomainName As String, cbReferencedDomainName As Long, peUse As Integer) As Long


Statement:
Declare Function LookupPrivilegeValue Lib "advapi32.dll" Alias "LookupPrivilegeValueA" (ByVal lpSystemName As String, ByVal lpName As String, lpLuid As LARGE_INTEGER) As Long


Statement:
Declare Function LookupPrivilegeName Lib "advapi32.dll" Alias "LookupPrivilegeNameA" (ByVal lpSystemName As String, lpLuid As LARGE_INTEGER, ByVal lpName As String, cbName As Long) As Long


Statement:
Declare Function LookupPrivilegeDisplayName Lib "advapi32.dll" Alias "LookupPrivilegeDisplayNameA" (ByVal lpSystemName As String, ByVal lpName As String, ByVal lpDisplayName As String, cbDisplayName As Long, lpLanguageID As Long) As Long


Statement:
Declare Function AllocateLocallyUniqueId Lib "advapi32.dll" Alias "AllocateLocallyUniqueId" (Luid As LARGE_INTEGER) As Long


Statement:
Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long


Statement:
Declare Function SetComputerName Lib "kernel32" Alias "SetComputerNameA" (ByVal lpComputerName As String) As Long


Statement:
Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long


Statement:
Declare Function QueryPerformanceCounter Lib "kernel32" Alias "QueryPerformanceCounter" (lpPerformanceCount As LARGE_INTEGER) As Long


Statement:
Declare Function QueryPerformanceFrequency Lib "kernel32" Alias "QueryPerformanceFrequency" (lpFrequency As LARGE_INTEGER) As Long


Statement:
Public Const MAX_LEADBYTES = 12  '  5 ranges, 2 bytes ea., 0 term.


Statement:
Public Const MB_PRECOMPOSED = &H1         '  use precomposed chars


Statement:
Public Const MB_COMPOSITE = &H2         '  use composite chars


Statement:
Public Const MB_USEGLYPHCHARS = &H4         '  use glyph chars, not ctrl chars


Statement:
Public Const WC_DEFAULTCHECK = &H100       '  check for default char


Statement:
Public Const WC_COMPOSITECHECK = &H200       '  convert composite to precomposed


Statement:
Public Const WC_DISCARDNS = &H10        '  discard non-spacing chars


Statement:
Public Const WC_SEPCHARS = &H20        '  generate separate chars


Statement:
Public Const WC_DEFAULTCHAR = &H40        '  replace w/ default char


Statement:
Public Const CT_CTYPE1 = &H1         '  ctype 1 information


Statement:
Public Const CT_CTYPE2 = &H2         '  ctype 2 information


Statement:
Public Const CT_CTYPE3 = &H4         '  ctype 3 information


Statement:
Public Const C1_UPPER = &H1     '  upper case


Statement:
Public Const C1_LOWER = &H2     '  lower case


Statement:
Public Const C1_DIGIT = &H4     '  decimal digits


Statement:
Public Const C1_SPACE = &H8     '  spacing characters


Statement:
Public Const C1_PUNCT = &H10    '  punctuation characters


Statement:
Public Const C1_CNTRL = &H20    '  control characters


Statement:
Public Const C1_BLANK = &H40    '  blank characters


Statement:
Public Const C1_XDIGIT = &H80    '  other digits


Statement:
Public Const C1_ALPHA = &H100   '  any letter


Statement:
Public Const C2_LEFTTORIGHT = &H1     '  left to right


Statement:
Public Const C2_RIGHTTOLEFT = &H2     '  right to left


Statement:
Public Const C2_EUROPENUMBER = &H3     '  European number, digit


Statement:
Public Const C2_EUROPESEPARATOR = &H4     '  European numeric separator


Statement:
Public Const C2_EUROPETERMINATOR = &H5     '  European numeric terminator


Statement:
Public Const C2_ARABICNUMBER = &H6     '  Arabic number


Statement:
Public Const C2_COMMONSEPARATOR = &H7     '  common numeric separator


Statement:
Public Const C2_BLOCKSEPARATOR = &H8     '  block separator


Statement:
Public Const C2_SEGMENTSEPARATOR = &H9     '  segment separator


Statement:
Public Const C2_WHITESPACE = &HA     '  white space


Statement:
Public Const C2_OTHERNEUTRAL = &HB     '  other neutrals


Statement:
Public Const C2_NOTAPPLICABLE = &H0     '  no implicit directionality


Statement:
Public Const C3_NONSPACING = &H1     '  nonspacing character


Statement:
Public Const C3_DIACRITIC = &H2     '  diacritic mark


Statement:
Public Const C3_VOWELMARK = &H4     '  vowel mark


Statement:
Public Const C3_SYMBOL = &H8     '  symbols


Statement:
Public Const C3_NOTAPPLICABLE = &H0     '  ctype 3 is not applicable


Statement:
Public Const NORM_IGNORECASE = &H1         '  ignore case


Statement:
Public Const NORM_IGNORENONSPACE = &H2         '  ignore nonspacing chars


Statement:
Public Const NORM_IGNORESYMBOLS = &H4         '  ignore symbols


Statement:
Public Const MAP_FOLDCZONE = &H10        '  fold compatibility zone chars


Statement:
Public Const MAP_PRECOMPOSED = &H20        '  convert to precomposed chars


Statement:
Public Const MAP_COMPOSITE = &H40        '  convert to composite chars


Statement:
Public Const MAP_FOLDDIGITS = &H80        '  all digits to ASCII 0-9


Statement:
Public Const LCMAP_LOWERCASE = &H100       '  lower case letters


Statement:
Public Const LCMAP_UPPERCASE = &H200       '  upper case letters


Statement:
Public Const LCMAP_SORTKEY = &H400       '  WC sort key (normalize)


Statement:
Public Const LCMAP_BYTEREV = &H800       '  byte reversal


Statement:
Public Const SORT_STRINGSORT = &H1000      '  use string sort method


Statement:
Public Const CP_ACP = 0  '  default to ANSI code page


Statement:
Public Const CP_OEMCP = 1  '  default to OEM  code page


Statement:
Public Const CTRY_AUSTRALIA = 61  '  Australia


Statement:
Public Const CTRY_AUSTRIA = 43  '  Austria


Statement:
Public Const CTRY_BELGIUM = 32  '  Belgium


Statement:
Public Const CTRY_BRAZIL = 55  '  Brazil


Statement:
Public Const CTRY_DENMARK = 45  '  Denmark


Statement:
Public Const CTRY_FINLAND = 358  '  Finland


Statement:
Public Const CTRY_FRANCE = 33  '  France


Statement:
Public Const CTRY_GERMANY = 49  '  Germany


Statement:
Public Const CTRY_ICELAND = 354  '  Iceland


Statement:
Public Const CTRY_IRELAND = 353  '  Ireland


Statement:
Public Const CTRY_MEXICO = 52  '  Mexico


Statement:
Public Const CTRY_NETHERLANDS = 31  '  Netherlands


Statement:
Public Const CTRY_NEW_ZEALAND = 64  '  New Zealand


Statement:
Public Const CTRY_NORWAY = 47  '  Norway


Statement:
Public Const CTRY_PORTUGAL = 351  '  Portugal


Statement:
Public Const CTRY_PRCHINA = 86  '  PR China


Statement:
Public Const CTRY_SOUTH_KOREA = 82  '  South Korea


Statement:
Public Const CTRY_SWEDEN = 46  '  Sweden


Statement:
Public Const CTRY_SWITZERLAND = 41  '  Switzerland


Statement:
Public Const CTRY_TAIWAN = 886  '  Taiwan


Statement:
Public Const CTRY_UNITED_KINGDOM = 44  '  United Kingdom


Statement:
Public Const CTRY_UNITED_STATES = 1  '  United States


Statement:
Public Const LOCALE_NOUSEROVERRIDE = &H80000000  '  do not use user overrides


Statement:
Public Const LOCALE_ILANGUAGE = &H1         '  language id


Statement:
Public Const LOCALE_SLANGUAGE = &H2         '  localized name of language


Statement:
Public Const LOCALE_SENGLANGUAGE = &H1001      '  English name of language


Statement:
Public Const LOCALE_SABBREVLANGNAME = &H3         '  abbreviated language name


Statement:
Public Const LOCALE_SNATIVELANGNAME = &H4         '  native name of language


Statement:
Public Const LOCALE_ICOUNTRY = &H5         '  country code


Statement:
Public Const LOCALE_SCOUNTRY = &H6         '  localized name of country


Statement:
Public Const LOCALE_SENGCOUNTRY = &H1002      '  English name of country


Statement:
Public Const LOCALE_SABBREVCTRYNAME = &H7         '  abbreviated country name


Statement:
Public Const LOCALE_SNATIVECTRYNAME = &H8         '  native name of country


Statement:
Public Const LOCALE_IDEFAULTLANGUAGE = &H9         '  default language id


Statement:
Public Const LOCALE_IDEFAULTCOUNTRY = &HA         '  default country code


Statement:
Public Const LOCALE_IDEFAULTCODEPAGE = &HB         '  default code page


Statement:
Public Const LOCALE_SLIST = &HC         '  list item separator


Statement:
Public Const LOCALE_IMEASURE = &HD         '  0 = metric, 1 = US


Statement:
Public Const LOCALE_SDECIMAL = &HE         '  decimal separator


Statement:
Public Const LOCALE_STHOUSAND = &HF         '  thousand separator


Statement:
Public Const LOCALE_SGROUPING = &H10        '  digit grouping


Statement:
Public Const LOCALE_IDIGITS = &H11        '  number of fractional digits


Statement:
Public Const LOCALE_ILZERO = &H12        '  leading zeros for decimal


Statement:
Public Const LOCALE_SNATIVEDIGITS = &H13        '  native ascii 0-9


Statement:
Public Const LOCALE_SCURRENCY = &H14        '  local monetary symbol


Statement:
Public Const LOCALE_SINTLSYMBOL = &H15        '  intl monetary symbol


Statement:
Public Const LOCALE_SMONDECIMALSEP = &H16        '  monetary decimal separator


Statement:
Public Const LOCALE_SMONTHOUSANDSEP = &H17        '  monetary thousand separator


Statement:
Public Const LOCALE_SMONGROUPING = &H18        '  monetary grouping


Statement:
Public Const LOCALE_ICURRDIGITS = &H19        '  # local monetary digits


Statement:
Public Const LOCALE_IINTLCURRDIGITS = &H1A        '  # intl monetary digits


Statement:
Public Const LOCALE_ICURRENCY = &H1B        '  positive currency mode


Statement:
Public Const LOCALE_INEGCURR = &H1C        '  negative currency mode


Statement:
Public Const LOCALE_SDATE = &H1D        '  date separator


Statement:
Public Const LOCALE_STIME = &H1E        '  time separator


Statement:
Public Const LOCALE_SSHORTDATE = &H1F        '  short date format string


Statement:
Public Const LOCALE_SLONGDATE = &H20        '  long date format string


Statement:
Public Const LOCALE_STIMEFORMAT = &H1003      '  time format string


Statement:
Public Const LOCALE_IDATE = &H21        '  short date format ordering


Statement:
Public Const LOCALE_ILDATE = &H22        '  long date format ordering


Statement:
Public Const LOCALE_ITIME = &H23        '  time format specifier


Statement:
Public Const LOCALE_ICENTURY = &H24        '  century format specifier


Statement:
Public Const LOCALE_ITLZERO = &H25        '  leading zeros in time field


Statement:
Public Const LOCALE_IDAYLZERO = &H26        '  leading zeros in day field


Statement:
Public Const LOCALE_IMONLZERO = &H27        '  leading zeros in month field


Statement:
Public Const LOCALE_S1159 = &H28        '  AM designator


Statement:
Public Const LOCALE_S2359 = &H29        '  PM designator


Statement:
Public Const LOCALE_SDAYNAME1 = &H2A        '  long name for Monday


Statement:
Public Const LOCALE_SDAYNAME2 = &H2B        '  long name for Tuesday


Statement:
Public Const LOCALE_SDAYNAME3 = &H2C        '  long name for Wednesday


Statement:
Public Const LOCALE_SDAYNAME4 = &H2D        '  long name for Thursday


Statement:
Public Const LOCALE_SDAYNAME5 = &H2E        '  long name for Friday


Statement:
Public Const LOCALE_SDAYNAME6 = &H2F        '  long name for Saturday


Statement:
Public Const LOCALE_SDAYNAME7 = &H30        '  long name for Sunday


Statement:
Public Const LOCALE_SABBREVDAYNAME1 = &H31        '  abbreviated name for Monday


Statement:
Public Const LOCALE_SABBREVDAYNAME2 = &H32        '  abbreviated name for Tuesday


Statement:
Public Const LOCALE_SABBREVDAYNAME3 = &H33        '  abbreviated name for Wednesday


Statement:
Public Const LOCALE_SABBREVDAYNAME4 = &H34        '  abbreviated name for Thursday


Statement:
Public Const LOCALE_SABBREVDAYNAME5 = &H35        '  abbreviated name for Friday


Statement:
Public Const LOCALE_SABBREVDAYNAME6 = &H36        '  abbreviated name for Saturday


Statement:
Public Const LOCALE_SABBREVDAYNAME7 = &H37        '  abbreviated name for Sunday


Statement:
Public Const LOCALE_SMONTHNAME1 = &H38        '  long name for January


Statement:
Public Const LOCALE_SMONTHNAME2 = &H39        '  long name for February


Statement:
Public Const LOCALE_SMONTHNAME3 = &H3A        '  long name for March


Statement:
Public Const LOCALE_SMONTHNAME4 = &H3B        '  long name for April


Statement:
Public Const LOCALE_SMONTHNAME5 = &H3C        '  long name for May


Statement:
Public Const LOCALE_SMONTHNAME6 = &H3D        '  long name for June


Statement:
Public Const LOCALE_SMONTHNAME7 = &H3E        '  long name for July


Statement:
Public Const LOCALE_SMONTHNAME8 = &H3F        '  long name for August


Statement:
Public Const LOCALE_SMONTHNAME9 = &H40        '  long name for September


Statement:
Public Const LOCALE_SMONTHNAME10 = &H41        '  long name for October


Statement:
Public Const LOCALE_SMONTHNAME11 = &H42        '  long name for November


Statement:
Public Const LOCALE_SMONTHNAME12 = &H43        '  long name for December


Statement:
Public Const LOCALE_SABBREVMONTHNAME1 = &H44        '  abbreviated name for January


Statement:
Public Const LOCALE_SABBREVMONTHNAME2 = &H45        '  abbreviated name for February


Statement:
Public Const LOCALE_SABBREVMONTHNAME3 = &H46        '  abbreviated name for March


Statement:
Public Const LOCALE_SABBREVMONTHNAME4 = &H47        '  abbreviated name for April


Statement:
Public Const LOCALE_SABBREVMONTHNAME5 = &H48        '  abbreviated name for May


Statement:
Public Const LOCALE_SABBREVMONTHNAME6 = &H49        '  abbreviated name for June


Statement:
Public Const LOCALE_SABBREVMONTHNAME7 = &H4A        '  abbreviated name for July


Statement:
Public Const LOCALE_SABBREVMONTHNAME8 = &H4B        '  abbreviated name for August


Statement:
Public Const LOCALE_SABBREVMONTHNAME9 = &H4C        '  abbreviated name for September


Statement:
Public Const LOCALE_SABBREVMONTHNAME10 = &H4D        '  abbreviated name for October


Statement:
Public Const LOCALE_SABBREVMONTHNAME11 = &H4E        '  abbreviated name for November


Statement:
Public Const LOCALE_SABBREVMONTHNAME12 = &H4F        '  abbreviated name for December


Statement:
Public Const LOCALE_SABBREVMONTHNAME13 = &H100F


Statement:
Public Const LOCALE_SPOSITIVESIGN = &H50        '  positive sign


Statement:
Public Const LOCALE_SNEGATIVESIGN = &H51        '  negative sign


Statement:
Public Const LOCALE_IPOSSIGNPOSN = &H52        '  positive sign position


Statement:
Public Const LOCALE_INEGSIGNPOSN = &H53        '  negative sign position


Statement:
Public Const LOCALE_IPOSSYMPRECEDES = &H54        '  mon sym precedes pos amt


Statement:
Public Const LOCALE_IPOSSEPBYSPACE = &H55        '  mon sym sep by space from pos amt


Statement:
Public Const LOCALE_INEGSYMPRECEDES = &H56        '  mon sym precedes neg amt


Statement:
Public Const LOCALE_INEGSEPBYSPACE = &H57        '  mon sym sep by space from neg amt


Statement:
Public Const TIME_NOMINUTESORSECONDS = &H1         '  do not use minutes or seconds


Statement:
Public Const TIME_NOSECONDS = &H2         '  do not use seconds


Statement:
Public Const TIME_NOTIMEMARKER = &H4         '  do not use time marker


Statement:
Public Const TIME_FORCE24HOURFORMAT = &H8         '  always use 24 hour format


Statement:
Public Const DATE_SHORTDATE = &H1         '  use short date picture


Statement:
Public Const DATE_LONGDATE = &H2         '  use long date picture


Statement:
Declare Function IsValidCodePage Lib "kernel32" Alias "IsValidCodePage" (ByVal CodePage As Long) As Long


Statement:
Declare Function GetACP Lib "kernel32" Alias "GetACP" () As Long


Statement:
Declare Function GetOEMCP Lib "kernel32" Alias "GetOEMCP" () As Long


Statement:
Declare Function GetCPInfo Lib "kernel32" Alias "GetCPInfo" (ByVal CodePage As Long, lpCPInfo As CPINFO) As Long


Statement:
Declare Function IsDBCSLeadByte Lib "kernel32" Alias "IsDBCSLeadByte" (ByVal bTestChar As Byte) As Long


Statement:
Declare Function MultiByteToWideChar Lib "kernel32" Alias "MultiByteToWideChar" (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpMultiByteStr As String, ByVal cchMultiByte As Long, ByVal lpWideCharStr As String, ByVal cchWideChar As Long) As Long


Statement:
Declare Function WideCharToMultiByte Lib "kernel32" Alias "WideCharToMultiByte" (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpWideCharStr As String, ByVal cchWideChar As Long, ByVal lpMultiByteStr As String, ByVal cchMultiByte As Long, ByVal lpDefaultChar As String, ByVal lpUsedDefaultChar As Long) As Long


Statement:
Declare Function CompareString Lib "kernel32" Alias "CompareStringA" (ByVal Locale As Long, ByVal dwCmpFlags As Long, ByVal lpString1 As String, ByVal cchCount1 As Long, ByVal lpString2 As String, ByVal cchCount2 As Long) As Long


Statement:
Declare Function LCMapString Lib "kernel32" Alias "LCMapStringA" (ByVal Locale As Long, ByVal dwMapFlags As Long, ByVal lpSrcStr As String, ByVal cchSrc As Long, ByVal lpDestStr As String, ByVal cchDest As Long) As Long


Statement:
Declare Function GetLocaleInfo Lib "kernel32" Alias "GetLocaleInfoA" (ByVal Locale As Long, ByVal LCType As Long, ByVal lpLCData As String, ByVal cchData As Long) As Long


Statement:
Declare Function GetTimeFormat Lib "kernel32" Alias "GetTimeFormatA" (ByVal Locale As Long, ByVal dwFlags As Long, lpTime As SYSTEMTIME, ByVal lpFormat As String, ByVal lpTimeStr As String, ByVal cchTime As Long) As Long


Statement:
Declare Function GetDateFormat Lib "kernel32" Alias "GetDateFormatA" (ByVal Locale As Long, ByVal dwFlags As Long, lpDate As SYSTEMTIME, ByVal lpFormat As String, ByVal lpDateStr As String, ByVal cchDate As Long) As Long


Statement:
Declare Function SetThreadLocale Lib "kernel32" Alias "SetThreadLocale" (ByVal Locale As Long) As Long


Statement:
Declare Function GetSystemDefaultLangID Lib "kernel32" Alias "GetSystemDefaultLangID" () As Integer


Statement:
Declare Function GetUserDefaultLangID Lib "kernel32" Alias "GetUserDefaultLangID" () As Integer


Statement:
Declare Function GetSystemDefaultLCID Lib "kernel32" Alias "GetSystemDefaultLCID" () As Long


Statement:
Declare Function GetUserDefaultLCID Lib "kernel32" Alias "GetUserDefaultLCID" () As Long


Statement:
Declare Function GetStringTypeA Lib "kernel32" Alias "GetStringTypeA" (ByVal lcid As Long, ByVal dwInfoType As Long, ByVal lpSrcStr As String, ByVal cchSrc As Long, lpCharType As Long) As Long


Statement:
Declare Function FoldString Lib "kernel32" Alias "FoldStringA" (ByVal dwMapFlags As Long, ByVal lpSrcStr As String, ByVal cchSrc As Long, ByVal lpDestStr As String, ByVal cchDest As Long) As Long


Statement:
Public Const CAL_ICALINTVALUE = &H1                     '  calendar type


Statement:
Public Const CAL_SCALNAME = &H2                         '  native name of calendar


Statement:
Public Const CAL_IYEAROFFSETRANGE = &H3                 '  starting years of eras


Statement:
Public Const CAL_SERASTRING = &H4                       '  era name for IYearOffsetRanges


Statement:
Public Const CAL_SSHORTDATE = &H5                       '  Integer date format string


Statement:
Public Const CAL_SLONGDATE = &H6                        '  long date format string


Statement:
Public Const CAL_SDAYNAME1 = &H7                        '  native name for Monday


Statement:
Public Const CAL_SDAYNAME2 = &H8                        '  native name for Tuesday


Statement:
Public Const CAL_SDAYNAME3 = &H9                        '  native name for Wednesday


Statement:
Public Const CAL_SDAYNAME4 = &HA                        '  native name for Thursday


Statement:
Public Const CAL_SDAYNAME5 = &HB                        '  native name for Friday


Statement:
Public Const CAL_SDAYNAME6 = &HC                        '  native name for Saturday


Statement:
Public Const CAL_SDAYNAME7 = &HD                        '  native name for Sunday


Statement:
Public Const CAL_SABBREVDAYNAME1 = &HE                  '  abbreviated name for Monday


Statement:
Public Const CAL_SABBREVDAYNAME2 = &HF                  '  abbreviated name for Tuesday


Statement:
Public Const CAL_SABBREVDAYNAME3 = &H10                 '  abbreviated name for Wednesday


Statement:
Public Const CAL_SABBREVDAYNAME4 = &H11                 '  abbreviated name for Thursday


Statement:
Public Const CAL_SABBREVDAYNAME5 = &H12                 '  abbreviated name for Friday


Statement:
Public Const CAL_SABBREVDAYNAME6 = &H13                 '  abbreviated name for Saturday


Statement:
Public Const CAL_SABBREVDAYNAME7 = &H14                 '  abbreviated name for Sunday


Statement:
Public Const CAL_SMONTHNAME1 = &H15                     '  native name for January


Statement:
Public Const CAL_SMONTHNAME2 = &H16                     '  native name for February


Statement:
Public Const CAL_SMONTHNAME3 = &H17                     '  native name for March


Statement:
Public Const CAL_SMONTHNAME4 = &H18                     '  native name for April


Statement:
Public Const CAL_SMONTHNAME5 = &H19                     '  native name for May


Statement:
Public Const CAL_SMONTHNAME6 = &H1A                     '  native name for June


Statement:
Public Const CAL_SMONTHNAME7 = &H1B                     '  native name for July


Statement:
Public Const CAL_SMONTHNAME8 = &H1C                     '  native name for August


Statement:
Public Const CAL_SMONTHNAME9 = &H1D                     '  native name for September


Statement:
Public Const CAL_SMONTHNAME10 = &H1E                    '  native name for October


Statement:
Public Const CAL_SMONTHNAME11 = &H1F                    '  native name for November


Statement:
Public Const CAL_SMONTHNAME12 = &H20                    '  native name for December


Statement:
Public Const CAL_SMONTHNAME13 = &H21                    '  native name for 13th month (if any)


Statement:
Public Const CAL_SABBREVMONTHNAME1 = &H22               '  abbreviated name for January


Statement:
Public Const CAL_SABBREVMONTHNAME2 = &H23               '  abbreviated name for February


Statement:
Public Const CAL_SABBREVMONTHNAME3 = &H24               '  abbreviated name for March


Statement:
Public Const CAL_SABBREVMONTHNAME4 = &H25               '  abbreviated name for April


Statement:
Public Const CAL_SABBREVMONTHNAME5 = &H26               '  abbreviated name for May


Statement:
Public Const CAL_SABBREVMONTHNAME6 = &H27               '  abbreviated name for June


Statement:
Public Const CAL_SABBREVMONTHNAME7 = &H28               '  abbreviated name for July


Statement:
Public Const CAL_SABBREVMONTHNAME8 = &H29               '  abbreviated name for August


Statement:
Public Const CAL_SABBREVMONTHNAME9 = &H2A               '  abbreviated name for September


Statement:
Public Const CAL_SABBREVMONTHNAME10 = &H2B              '  abbreviated name for October


Statement:
Public Const CAL_SABBREVMONTHNAME11 = &H2C              '  abbreviated name for November


Statement:
Public Const CAL_SABBREVMONTHNAME12 = &H2D              '  abbreviated name for December


Statement:
Public Const CAL_SABBREVMONTHNAME13 = &H2E              '  abbreviated name for 13th month (if any)


Statement:
Public Const ENUM_ALL_CALENDARS = &HFFFF                '  enumerate all calendars


Statement:
Public Const CAL_GREGORIAN = 1                 '  Gregorian (localized) calendar


Statement:
Public Const CAL_GREGORIAN_US = 2              '  Gregorian (U.S.) calendar


Statement:
Public Const CAL_JAPAN = 3                     '  Japanese Emperor Era calendar


Statement:
Public Const CAL_TAIWAN = 4                    '  Republic of China Era calendar


Statement:
Public Const CAL_KOREA = 5                     '  Korean Tangun Era calendar


Statement:
Type CPINFO
        MaxCharSize As Long                    '  max length (Byte) of a char
        DefaultChar(MAX_DEFAULTCHAR) As Byte   '  default character
        LeadByte(MAX_LEADBYTES) As Byte        '  lead byte ranges
End Type


Statement:
Type NUMBERFMT
        NumDigits As Long                 '  number of decimal digits
        LeadingZero As Long '  if leading zero in decimal fields
        Grouping As Long '  group size left of decimal
        lpDecimalSep As String              '  ptr to decimal separator string
        lpThousandSep As String             '  ptr to thousand separator string
        NegativeOrder As Long '  negative number ordering
End Type


Statement:
Type CURRENCYFMT
        NumDigits As Long '  number of decimal digits
        LeadingZero As Long '  if leading zero in decimal fields
        Grouping As Long '  group size left of decimal
        lpDecimalSep As String              '  ptr to decimal separator string
        lpThousandSep As String             '  ptr to thousand separator string
        NegativeOrder As Long '  negative currency ordering
        PositiveOrder As Long '  positive currency ordering
        lpCurrencySymbol As String          '  ptr to currency symbol string
End Type


Statement:
Declare Function EnumTimeFormats Lib "KERNEL32" Alias "EnumTimeFormats" (ByVal lpTimeFmtEnumProc As Long, ByVal Locale As Long, ByVal dwFlags As Long) As Long


Statement:
Declare Function EnumDateFormats Lib "KERNEL32" Alias "EnumDateFormats" (ByVal lpDateFmtEnumProc As Long, ByVal Locale As Long, ByVal dwFlags As Long) As Long


Statement:
Declare Function IsValidLocale Lib "KERNEL32" Alias "IsValidLocale" (ByVal Locale As Long, ByVal dwFlags As Long) As Long


Statement:
Declare Function ConvertDefaultLocale Lib "KERNEL32" Alias "ConvertDefaultLocale" (ByVal Locale As Long) As Long


Statement:
Declare Function GetThreadLocale Lib "KERNEL32" Alias "GetThreadLocale" () As Long


Statement:
Declare Function EnumSystemLocales Lib "KERNEL32" Alias "EnumSystemLocales" (ByVal lpLocaleEnumProc As Long, ByVal dwFlags As Long) As Long


Statement:
Declare Function EnumSystemCodePages Lib "KERNEL32" Alias "EnumSystemCodePages" (ByVal lpCodePageEnumProc As Long, ByVal dwFlags As Long) As Long


Statement:
Type COORD
        x As Integer
        y As Integer
End Type


Statement:
Type SMALL_RECT
        Left As Integer
        Top As Integer
        Right As Integer
        Bottom As Integer
End Type


Statement:
Type KEY_EVENT_RECORD
        bKeyDown As Boolean
        wRepeatCount As Integer
        wVirtualKeyCode As Integer
        wVirtualScanCode As Integer
        uChar As Integer
        dwControlKeyState As Long
End Type


Statement:
Public Const RIGHT_ALT_PRESSED = &H1     '  the right alt key is pressed.


Statement:
Public Const LEFT_ALT_PRESSED = &H2     '  the left alt key is pressed.


Statement:
Public Const RIGHT_CTRL_PRESSED = &H4     '  the right ctrl key is pressed.


Statement:
Public Const LEFT_CTRL_PRESSED = &H8     '  the left ctrl key is pressed.


Statement:
Public Const SHIFT_PRESSED = &H10    '  the shift key is pressed.


Statement:
Public Const NUMLOCK_ON = &H20    '  the numlock light is on.


Statement:
Public Const SCROLLLOCK_ON = &H40    '  the scrolllock light is on.


Statement:
Public Const CAPSLOCK_ON = &H80    '  the capslock light is on.


Statement:
Public Const ENHANCED_KEY = &H100   '  the key is enhanced.


Statement:
Type MOUSE_EVENT_RECORD
        dwMousePosition As COORD
        dwButtonState As Long
        dwControlKeyState As Long
        dwEventFlags As Long
End Type


Statement:
Public Const FROM_LEFT_1ST_BUTTON_PRESSED = &H1


Statement:
Public Const RIGHTMOST_BUTTON_PRESSED = &H2


Statement:
Public Const FROM_LEFT_2ND_BUTTON_PRESSED = &H4


Statement:
Public Const FROM_LEFT_3RD_BUTTON_PRESSED = &H8


Statement:
Public Const FROM_LEFT_4TH_BUTTON_PRESSED = &H10


Statement:
Type WINDOW_BUFFER_SIZE_RECORD
        dwSize As COORD
End Type


Statement:
Type MENU_EVENT_RECORD
        dwCommandId As Long
End Type


Statement:
Type FOCUS_EVENT_RECORD
        bSetFocus As Boolean
End Type


Statement:
Public Const KEY_EVENT = &H1     '  Event contains key event record


Statement:
Public Const mouse_eventC = &H2     '  Event contains mouse event record


Statement:
Public Const WINDOW_BUFFER_SIZE_EVENT = &H4     '  Event contains window change event record


Statement:
Public Const MENU_EVENT = &H8     '  Event contains menu event record


Statement:
Public Const FOCUS_EVENT = &H10    '  event contains focus change


Statement:
Type CHAR_INFO
        Char As Integer
        Attributes As Integer
End Type


Statement:
Public Const FOREGROUND_BLUE = &H1     '  text color contains blue.


Statement:
Public Const FOREGROUND_GREEN = &H2     '  text color contains green.


Statement:
Public Const FOREGROUND_RED = &H4     '  text color contains red.


Statement:
Public Const FOREGROUND_INTENSITY = &H8     '  text color is intensified.


Statement:
Public Const BACKGROUND_BLUE = &H10    '  background color contains blue.


Statement:
Public Const BACKGROUND_GREEN = &H20    '  background color contains green.


Statement:
Public Const BACKGROUND_RED = &H40    '  background color contains red.


Statement:
Public Const BACKGROUND_INTENSITY = &H80    '  background color is intensified.


Statement:
Type CONSOLE_SCREEN_BUFFER_INFO
        dwSize As COORD
        dwCursorPosition As COORD
        wAttributes As Integer
        srWindow As SMALL_RECT
        dwMaximumWindowSize As COORD
End Type


Statement:
Type CONSOLE_CURSOR_INFO
        dwSize As Long
        bVisible As Boolean
End Type


Statement:
Public Const ENABLE_PROCESSED_INPUT = &H1


Statement:
Public Const ENABLE_PROCESSED_OUTPUT = &H1


Statement:
Public Const ENABLE_WRAP_AT_EOL_OUTPUT = &H2


Statement:
Declare Function ReadConsoleOutput Lib "kernel32" Alias "ReadConsoleOutputA" (ByVal hConsoleOutput As Long, lpBuffer As CHAR_INFO, dwBufferSize As COORD, dwBufferCoord As COORD, lpReadRegion As SMALL_RECT) As Long


Statement:
Declare Function WriteConsoleOutput Lib "kernel32" Alias "WriteConsoleOutputA" (ByVal hConsoleOutput As Long, lpBuffer As CHAR_INFO, dwBufferSize As COORD, dwBufferCoord As COORD, lpWriteRegion As SMALL_RECT) As Long


Statement:
Declare Function ReadConsoleOutputCharacter Lib "kernel32" Alias "ReadConsoleOutputCharacterA" (ByVal hConsoleOutput As Long, ByVal lpCharacter As String, ByVal nLength As Long, dwReadCoord As COORD, lpNumberOfCharsRead As Long) As Long


Statement:
Declare Function ReadConsoleOutputAttribute Lib "kernel32" Alias "ReadConsoleOutputAttribute" (ByVal hConsoleOutput As Long, lpAttribute As Long, ByVal nLength As Long, dwReadCoord As COORD, lpNumberOfAttrsRead As Long) As Long


Statement:
Declare Function WriteConsoleOutputCharacter Lib "kernel32" Alias "WriteConsoleOutputCharacterA" (ByVal hConsoleOutput As Long, ByVal lpCharacter As String, ByVal nLength As Long, dwWriteCoord As COORD, lpNumberOfCharsWritten As Long) As Long


Statement:
Declare Function WriteConsoleOutputAttribute Lib "kernel32" Alias "WriteConsoleOutputAttribute" (ByVal hConsoleOutput As Long, lpAttribute As Integer, ByVal nLength As Long, dwWriteCoord As COORD, lpNumberOfAttrsWritten As Long) As Long


Statement:
Declare Function FillConsoleOutputCharacter Lib "kernel32" Alias "FillConsoleOutputCharacterA" (ByVal hConsoleOutput As Long, ByVal cCharacter As Byte, ByVal nLength As Long, dwWriteCoord As COORD, lpNumberOfCharsWritten As Long) As Long


Statement:
Declare Function FillConsoleOutputAttribute Lib "kernel32" Alias "FillConsoleOutputAttribute" (ByVal hConsoleOutput As Long, ByVal wAttribute As Long, ByVal nLength As Long, dwWriteCoord As COORD, lpNumberOfAttrsWritten As Long) As Long


Statement:
Declare Function GetConsoleMode Lib "kernel32" Alias "GetConsoleMode" (ByVal hConsoleHandle As Long, lpMode As Long) As Long


Statement:
Declare Function GetNumberOfConsoleInputEvents Lib "kernel32" Alias "GetNumberOfConsoleInputEvents" (ByVal hConsoleInput As Long, lpNumberOfEvents As Long) As Long


Statement:
Declare Function GetConsoleScreenBufferInfo Lib "kernel32" Alias "GetConsoleScreenBufferInfo" (ByVal hConsoleOutput As Long, lpConsoleScreenBufferInfo As CONSOLE_SCREEN_BUFFER_INFO) As Long


Statement:
Declare Function GetLargestConsoleWindowSize Lib "kernel32" Alias "GetLargestConsoleWindowSize" (ByVal hConsoleOutput As Long) As COORD


Statement:
Declare Function GetConsoleCursorInfo Lib "kernel32" Alias "GetConsoleCursorInfo" (ByVal hConsoleOutput As Long, lpConsoleCursorInfo As CONSOLE_CURSOR_INFO) As Long


Statement:
Declare Function GetNumberOfConsoleMouseButtons Lib "kernel32" Alias "GetNumberOfConsoleMouseButtons" (lpNumberOfMouseButtons As Long) As Long


Statement:
Declare Function SetConsoleMode Lib "kernel32" Alias "SetConsoleMode" (ByVal hConsoleHandle As Long, ByVal dwMode As Long) As Long


Statement:
Declare Function SetConsoleActiveScreenBuffer Lib "kernel32" Alias "SetConsoleActiveScreenBuffer" (ByVal hConsoleOutput As Long) As Long


Statement:
Declare Function FlushConsoleInputBuffer Lib "kernel32" Alias "FlushConsoleInputBuffer" (ByVal hConsoleInput As Long) As Long


Statement:
Declare Function SetConsoleScreenBufferSize Lib "kernel32" Alias "SetConsoleScreenBufferSize" (ByVal hConsoleOutput As Long, dwSize As COORD) As Long


Statement:
Declare Function SetConsoleCursorPosition Lib "kernel32" Alias "SetConsoleCursorPosition" (ByVal hConsoleOutput As Long, dwCursorPosition As COORD) As Long


Statement:
Declare Function SetConsoleCursorInfo Lib "kernel32" Alias "SetConsoleCursorInfo" (ByVal hConsoleOutput As Long, lpConsoleCursorInfo As CONSOLE_CURSOR_INFO) As Long


Statement:
Declare Function ScrollConsoleScreenBuffer Lib "kernel32" Alias "ScrollConsoleScreenBufferA" (ByVal hConsoleOutput As Long, lpScrollRectangle As SMALL_RECT, lpClipRectangle As SMALL_RECT, dwDestinationOrigin As COORD, lpFill As CHAR_INFO) As Long


Statement:
Declare Function SetConsoleWindowInfo Lib "kernel32" Alias "SetConsoleWindowInfo" (ByVal hConsoleOutput As Long, ByVal bAbsolute As Long, lpConsoleWindow As SMALL_RECT) As Long


Statement:
Declare Function SetConsoleTextAttribute Lib "kernel32" Alias "SetConsoleTextAttribute" (ByVal hConsoleOutput As Long, ByVal wAttributes As Long) As Long


Statement:
Declare Function SetConsoleCtrlHandler Lib "kernel32" Alias "SetConsoleCtrlHandler" (ByVal HandlerRoutine As Long, ByVal Add As Long) As Long


Statement:
Declare Function GenerateConsoleCtrlEvent Lib "kernel32" Alias "GenerateConsoleCtrlEvent" (ByVal dwCtrlEvent As Long, ByVal dwProcessGroupId As Long) As Long


Statement:
Declare Function AllocConsole Lib "kernel32" Alias "AllocConsole" () As Long


Statement:
Declare Function FreeConsole Lib "kernel32" Alias "FreeConsole" () As Long


Statement:
Declare Function GetConsoleTitle Lib "kernel32" Alias "GetConsoleTitleA" (ByVal lpConsoleTitle As String, ByVal nSize As Long) As Long


Statement:
Declare Function SetConsoleTitle Lib "kernel32" Alias "SetConsoleTitleA" (ByVal lpConsoleTitle As String) As Long


Statement:
Declare Function ReadConsole Lib "kernel32" Alias "ReadConsoleA" (ByVal hConsoleInput As Long, lpBuffer As Any, ByVal nNumberOfCharsToRead As Long, lpNumberOfCharsRead As Long, lpReserved As Any) As Long


Statement:
Declare Function WriteConsole Lib "kernel32" Alias "WriteConsoleA" (ByVal hConsoleOutput As Long, lpBuffer As Any, ByVal nNumberOfCharsToWrite As Long, lpNumberOfCharsWritten As Long, lpReserved As Any) As Long


Statement:
Public Const CONSOLE_TEXTMODE_BUFFER = 1


Statement:
Declare Function CreateConsoleScreenBuffer Lib "kernel32" Alias "CreateConsoleScreenBuffer" (ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, lpSecurityAttributes As SECURITY_ATTRIBUTES, ByVal dwFlags As Long, lpScreenBufferData As Any) As Long


Statement:
Declare Function GetConsoleCP Lib "kernel32" Alias "GetConsoleCP" () As Long


Statement:
Declare Function SetConsoleCP Lib "kernel32" Alias "SetConsoleCP" (ByVal wCodePageID As Long) As Long


Statement:
Declare Function GetConsoleOutputCP Lib "kernel32" Alias "GetConsoleOutputCP" () As Long


Statement:
Declare Function SetConsoleOutputCP Lib "kernel32" Alias "SetConsoleOutputCP" (ByVal wCodePageID As Long) As Long


Statement:
Public Const R2_MERGENOTPEN = 12        '  DPno


Statement:
Public Const R2_MERGEPENNOT = 14        '  PDno


Statement:
Public Const SRCCOPY = &HCC0020 ' (DWORD) dest = source


Statement:
Public Const SRCPAINT = &HEE0086        ' (DWORD) dest = source OR dest


Statement:
Public Const SRCAND = &H8800C6  ' (DWORD) dest = source AND dest


Statement:
Public Const SRCINVERT = &H660046       ' (DWORD) dest = source XOR dest


Statement:
Public Const SRCERASE = &H440328        ' (DWORD) dest = source AND (NOT dest )


Statement:
Public Const NOTSRCCOPY = &H330008      ' (DWORD) dest = (NOT source)


Statement:
Public Const NOTSRCERASE = &H1100A6     ' (DWORD) dest = (NOT src) AND (NOT dest)


Statement:
Public Const MERGECOPY = &HC000CA       ' (DWORD) dest = (source AND pattern)


Statement:
Public Const MERGEPAINT = &HBB0226      ' (DWORD) dest = (NOT source) OR dest


Statement:
Public Const PATCOPY = &HF00021 ' (DWORD) dest = pattern


Statement:
Public Const PATPAINT = &HFB0A09        ' (DWORD) dest = DPSnoo


Statement:
Public Const PATINVERT = &H5A0049       ' (DWORD) dest = pattern XOR dest


Statement:
Public Const DSTINVERT = &H550009       ' (DWORD) dest = (NOT dest)


Statement:
Public Const BLACKNESS = &H42 ' (DWORD) dest = BLACK


Statement:
Public Const WHITENESS = &HFF0062       ' (DWORD) dest = WHITE


Statement:
Public Const TA_MASK = (TA_BASELINE + TA_CENTER + TA_UPDATECP)


Statement:
Public Const DCB_SET = (DCB_RESET Or DCB_ACCUMULATE)


Statement:
Public Const META_SETPOLYFILLMODE = &H106


Statement:
Public Const META_SETSTRETCHBLTMODE = &H107


Statement:
Public Const META_SETTEXTCHAREXTRA = &H108


Statement:
Public Const META_SETTEXTJUSTIFICATION = &H20A


Statement:
Public Const META_SETVIEWPORTORG = &H20D


Statement:
Public Const META_SETVIEWPORTEXT = &H20E


Statement:
Public Const META_OFFSETWINDOWORG = &H20F


Statement:
Public Const META_SCALEWINDOWEXT = &H410


Statement:
Public Const META_OFFSETVIEWPORTORG = &H211


Statement:
Public Const META_SCALEVIEWPORTEXT = &H412


Statement:
Public Const META_EXCLUDECLIPRECT = &H415


Statement:
Public Const META_INTERSECTCLIPRECT = &H416


Statement:
Public Const META_SELECTCLIPREGION = &H12C


Statement:
Public Const META_SETMAPPERFLAGS = &H231


Statement:
Public Const META_ANIMATEPALETTE = &H436


Statement:
Public Const META_DIBCREATEPATTERNBRUSH = &H142


Statement:
Public Const META_CREATEPATTERNBRUSH = &H1F9


Statement:
Public Const META_CREATEPENINDIRECT = &H2FA


Statement:
Public Const META_CREATEFONTINDIRECT = &H2FB


Statement:
Public Const META_CREATEBRUSHINDIRECT = &H2FC


Statement:
Public Const GETEXTENDEDTEXTMETRICS = 256


Statement:
Public Const SET_BACKGROUND_COLOR = 4103


Statement:
Public Const POSTSCRIPT_PASSTHROUGH = 4115


Statement:
Public Const ENCAPSULATED_POSTSCRIPT = 4116


Statement:
Public Const MWT_MAX = MWT_RIGHTMULTIPLY


Statement:
Type XFORM
        eM11 As Double
        eM12 As Double
        eM21 As Double
        eM22 As Double
        eDx As Double
        eDy As Double
End Type


Statement:
Type BITMAP '14 bytes
        bmType As Long
        bmWidth As Long
        bmHeight As Long
        bmWidthBytes As Long
        bmPlanes As Integer
        bmBitsPixel As Integer
        bmBits As Long
End Type


Statement:
Type RGBTRIPLE
        rgbtBlue As Byte
        rgbtGreen As Byte
        rgbtRed As Byte
End Type


Statement:
Type RGBQUAD
        rgbBlue As Byte
        rgbGreen As Byte
        rgbRed As Byte
        rgbReserved As Byte
End Type


Statement:
Type BITMAPCOREHEADER '12 bytes
        bcSize As Long
        bcWidth As Integer
        bcHeight As Integer
        bcPlanes As Integer
        bcBitCount As Integer
End Type


Statement:
Type BITMAPINFOHEADER '40 bytes
        biSize As Long
        biWidth As Long
        biHeight As Long
        biPlanes As Integer
        biBitCount As Integer
        biCompression As Long
        biSizeImage As Long
        biXPelsPerMeter As Long
        biYPelsPerMeter As Long
        biClrUsed As Long
        biClrImportant As Long
End Type


Statement:
Type BITMAPINFO
        bmiHeader As BITMAPINFOHEADER
        bmiColors As RGBQUAD
End Type


Statement:
Type BITMAPCOREINFO
        bmciHeader As BITMAPCOREHEADER
        bmciColors As RGBTRIPLE
End Type


Statement:
Type BITMAPFILEHEADER
        bfType As Integer
        bfSize As Long
        bfReserved1 As Integer
        bfReserved2 As Integer
        bfOffBits As Long
End Type


Statement:
Type HANDLETABLE
        objectHandle(1) As Long
End Type


Statement:
Type METARECORD
        rdSize As Long
        rdFunction As Integer
        rdParm(1) As Integer
End Type


Statement:
Type METAFILEPICT
        mm As Long
        xExt As Long
        yExt As Long
        hMF As Long
End Type


Statement:
Type METAHEADER
        mtType As Integer
        mtHeaderSize As Integer
        mtVersion As Integer
        mtSize As Long
        mtNoObjects As Integer
        mtMaxRecord As Long
        mtNoParameters As Integer
End Type


Statement:
Type ENHMETARECORD
        iType As Long
        nSize As Long
        dParm(1) As Long
End Type


Statement:
Type SIZEL
    cx As Long
    cy As Long
End Type


Statement:
Type ENHMETAHEADER
        iType As Long
        nSize As Long
        rclBounds As RECTL
        rclFrame As RECTL
        dSignature As Long
        nVersion As Long
        nBytes As Long
        nRecords As Long
        nHandles As Integer
        sReserved As Integer
        nDescription As Long
        offDescription As Long
        nPalEntries As Long
        szlDevice As SIZEL
        szlMillimeters As SIZEL
End Type


Statement:
Type TEXTMETRIC
        tmHeight As Long
        tmAscent As Long
        tmDescent As Long
        tmInternalLeading As Long
        tmExternalLeading As Long
        tmAveCharWidth As Long
        tmMaxCharWidth As Long
        tmWeight As Long
        tmOverhang As Long
        tmDigitizedAspectX As Long
        tmDigitizedAspectY As Long
        tmFirstChar As Byte
        tmLastChar As Byte
        tmDefaultChar As Byte
        tmBreakChar As Byte
        tmItalic As Byte
        tmUnderlined As Byte
        tmStruckOut As Byte
        tmPitchAndFamily As Byte
        tmCharSet As Byte
End Type


Statement:
Type NEWTEXTMETRIC
        tmHeight As Long
        tmAscent As Long
        tmDescent As Long
        tmInternalLeading As Long
        tmExternalLeading As Long
        tmAveCharWidth As Long
        tmMaxCharWidth As Long
        tmWeight As Long
        tmOverhang As Long
        tmDigitizedAspectX As Long
        tmDigitizedAspectY As Long
        tmFirstChar As Byte
        tmLastChar As Byte
        tmDefaultChar As Byte
        tmBreakChar As Byte
        tmItalic As Byte
        tmUnderlined As Byte
        tmStruckOut As Byte
        tmPitchAndFamily As Byte
        tmCharSet As Byte
        ntmFlags As Long
        ntmSizeEM As Long
        ntmCellHeight As Long
        ntmAveWidth As Long
End Type


Statement:
Type PELARRAY
        paXCount As Long
        paYCount As Long
        paXExt As Long
        paYExt As Long
        paRGBs As Integer
End Type


Statement:
Type LOGBRUSH
        lbStyle As Long
        lbColor As Long
        lbHatch As Long
End Type


Statement:
Type LOGPEN
        lopnStyle As Long
        lopnWidth As POINTAPI
        lopnColor As Long
End Type


Statement:
Type EXTLOGPEN
        elpPenStyle As Long
        elpWidth As Long
        elpBrushStyle As Long
        elpColor As Long
        elpHatch As Long
        elpNumEntries As Long
        elpStyleEntry(1) As Long
End Type


Statement:
Type PALETTEENTRY
        peRed As Byte
        peGreen As Byte
        peBlue As Byte
        peFlags As Byte
End Type


Statement:
Type LOGPALETTE
        palVersion As Integer
        palNumEntries As Integer
        palPalEntry(1) As PALETTEENTRY
End Type


Statement:
Type LOGFONT
        lfHeight As Long
        lfWidth As Long
        lfEscapement As Long
        lfOrientation As Long
        lfWeight As Long
        lfItalic As Byte
        lfUnderline As Byte
        lfStrikeOut As Byte
        lfCharSet As Byte
        lfOutPrecision As Byte
        lfClipPrecision As Byte
        lfQuality As Byte
        lfPitchAndFamily As Byte
        lfFaceName(LF_FACESIZE) As Byte
End Type


Statement:
Type NONCLIENTMETRICS
        cbSize As Long
        iBorderWidth As Long
        iScrollWidth As Long
        iScrollHeight As Long
        iCaptionWidth As Long
        iCaptionHeight As Long
        lfCaptionFont As LOGFONT
        iSMCaptionWidth As Long
        iSMCaptionHeight As Long
        lfSMCaptionFont As LOGFONT
        iMenuWidth As Long
        iMenuHeight As Long
        lfMenuFont As LOGFONT
        lfStatusFont As LOGFONT
        lfMessageFont As LOGFONT
End Type


Statement:
Type ENUMLOGFONT
        elfLogFont As LOGFONT
        elfFullName(LF_FULLFACESIZE) As Byte
        elfStyle(LF_FACESIZE) As Byte
End Type


Statement:
Public Const FF_DONTCARE = 0    '  Don't care or don't know.


Statement:
Public Const FF_ROMAN = 16      '  Variable stroke width, serifed.


Statement:
Public Const FF_SWISS = 32      '  Variable stroke width, sans-serifed.


Statement:
Public Const FF_MODERN = 48     '  Constant stroke width, serifed or sans-serifed.


Statement:
Public Const FF_SCRIPT = 64     '  Cursive, etc.


Statement:
Public Const FF_DECORATIVE = 80 '  Old English, etc.


Statement:
Public Const FW_ULTRALIGHT = FW_EXTRALIGHT


Statement:
Public Const FW_ULTRABOLD = FW_EXTRABOLD


Statement:
Public Const PAN_STROKEVARIATION_INDEX = 5


Statement:
Type PANOSE
        ulculture As Long
        bFamilyType As Byte
        bSerifStyle As Byte
        bWeight As Byte
        bProportion As Byte
        bContrast As Byte
        bStrokeVariation As Byte
        bArmStyle As Byte
        bLetterform As Byte
        bMidline As Byte
        bXHeight As Byte
End Type


Statement:
Public Const PAN_FAMILY_TEXT_DISPLAY = 2  '  Text and Display


Statement:
Public Const PAN_FAMILY_SCRIPT = 3  '  Script


Statement:
Public Const PAN_FAMILY_DECORATIVE = 4  '  Decorative


Statement:
Public Const PAN_FAMILY_PICTORIAL = 5  '  Pictorial


Statement:
Public Const PAN_SERIF_COVE = 2  '  Cove


Statement:
Public Const PAN_SERIF_OBTUSE_COVE = 3  '  Obtuse Cove


Statement:
Public Const PAN_SERIF_SQUARE_COVE = 4  '  Square Cove


Statement:
Public Const PAN_SERIF_OBTUSE_SQUARE_COVE = 5  '  Obtuse Square Cove


Statement:
Public Const PAN_SERIF_SQUARE = 6  '  Square


Statement:
Public Const PAN_SERIF_THIN = 7  '  Thin


Statement:
Public Const PAN_SERIF_BONE = 8  '  Bone


Statement:
Public Const PAN_SERIF_EXAGGERATED = 9  '  Exaggerated


Statement:
Public Const PAN_SERIF_TRIANGLE = 10  '  Triangle


Statement:
Public Const PAN_SERIF_NORMAL_SANS = 11  '  Normal Sans


Statement:
Public Const PAN_SERIF_OBTUSE_SANS = 12  '  Obtuse Sans


Statement:
Public Const PAN_SERIF_PERP_SANS = 13  '  Prep Sans


Statement:
Public Const PAN_SERIF_FLARED = 14  '  Flared


Statement:
Public Const PAN_SERIF_ROUNDED = 15  '  Rounded


Statement:
Public Const PAN_WEIGHT_VERY_LIGHT = 2  '  Very Light


Statement:
Public Const PAN_WEIGHT_LIGHT = 3  '  Light


Statement:
Public Const PAN_WEIGHT_THIN = 4  '  Thin


Statement:
Public Const PAN_WEIGHT_BOOK = 5  '  Book


Statement:
Public Const PAN_WEIGHT_MEDIUM = 6  '  Medium


Statement:
Public Const PAN_WEIGHT_DEMI = 7  '  Demi


Statement:
Public Const PAN_WEIGHT_BOLD = 8  '  Bold


Statement:
Public Const PAN_WEIGHT_HEAVY = 9  '  Heavy


Statement:
Public Const PAN_WEIGHT_BLACK = 10  '  Black


Statement:
Public Const PAN_WEIGHT_NORD = 11  '  Nord


Statement:
Public Const PAN_PROP_OLD_STYLE = 2  '  Old Style


Statement:
Public Const PAN_PROP_MODERN = 3  '  Modern


Statement:
Public Const PAN_PROP_EVEN_WIDTH = 4  '  Even Width


Statement:
Public Const PAN_PROP_EXPANDED = 5  '  Expanded


Statement:
Public Const PAN_PROP_CONDENSED = 6  '  Condensed


Statement:
Public Const PAN_PROP_VERY_EXPANDED = 7  '  Very Expanded


Statement:
Public Const PAN_PROP_VERY_CONDENSED = 8  '  Very Condensed


Statement:
Public Const PAN_PROP_MONOSPACED = 9  '  Monospaced


Statement:
Public Const PAN_CONTRAST_NONE = 2  '  None


Statement:
Public Const PAN_CONTRAST_VERY_LOW = 3  '  Very Low


Statement:
Public Const PAN_CONTRAST_LOW = 4  '  Low


Statement:
Public Const PAN_CONTRAST_MEDIUM_LOW = 5  '  Medium Low


Statement:
Public Const PAN_CONTRAST_MEDIUM = 6  '  Medium


Statement:
Public Const PAN_CONTRAST_MEDIUM_HIGH = 7  '  Mediim High


Statement:
Public Const PAN_CONTRAST_HIGH = 8  '  High


Statement:
Public Const PAN_CONTRAST_VERY_HIGH = 9  '  Very High


Statement:
Public Const PAN_STROKE_GRADUAL_DIAG = 2  '  Gradual/Diagonal


Statement:
Public Const PAN_STROKE_GRADUAL_TRAN = 3  '  Gradual/Transitional


Statement:
Public Const PAN_STROKE_GRADUAL_VERT = 4  '  Gradual/Vertical


Statement:
Public Const PAN_STROKE_GRADUAL_HORZ = 5  '  Gradual/Horizontal


Statement:
Public Const PAN_STROKE_RAPID_VERT = 6  '  Rapid/Vertical


Statement:
Public Const PAN_STROKE_RAPID_HORZ = 7  '  Rapid/Horizontal


Statement:
Public Const PAN_STROKE_INSTANT_VERT = 8  '  Instant/Vertical


Statement:
Public Const PAN_STRAIGHT_ARMS_HORZ = 2  '  Straight Arms/Horizontal


Statement:
Public Const PAN_STRAIGHT_ARMS_WEDGE = 3  '  Straight Arms/Wedge


Statement:
Public Const PAN_STRAIGHT_ARMS_VERT = 4  '  Straight Arms/Vertical


Statement:
Public Const PAN_STRAIGHT_ARMS_SINGLE_SERIF = 5 '  Straight Arms/Single-Serif


Statement:
Public Const PAN_STRAIGHT_ARMS_DOUBLE_SERIF = 6 '  Straight Arms/Double-Serif


Statement:
Public Const PAN_BENT_ARMS_HORZ = 7  '  Non-Straight Arms/Horizontal


Statement:
Public Const PAN_BENT_ARMS_WEDGE = 8  '  Non-Straight Arms/Wedge


Statement:
Public Const PAN_BENT_ARMS_VERT = 9  '  Non-Straight Arms/Vertical


Statement:
Public Const PAN_BENT_ARMS_SINGLE_SERIF = 10  '  Non-Straight Arms/Single-Serif


Statement:
Public Const PAN_BENT_ARMS_DOUBLE_SERIF = 11  '  Non-Straight Arms/Double-Serif


Statement:
Public Const PAN_LETT_NORMAL_CONTACT = 2  '  Normal/Contact


Statement:
Public Const PAN_LETT_NORMAL_WEIGHTED = 3  '  Normal/Weighted


Statement:
Public Const PAN_LETT_NORMAL_BOXED = 4  '  Normal/Boxed


Statement:
Public Const PAN_LETT_NORMAL_FLATTENED = 5  '  Normal/Flattened


Statement:
Public Const PAN_LETT_NORMAL_ROUNDED = 6  '  Normal/Rounded


Statement:
Public Const PAN_LETT_NORMAL_OFF_CENTER = 7  '  Normal/Off Center


Statement:
Public Const PAN_LETT_NORMAL_SQUARE = 8  '  Normal/Square


Statement:
Public Const PAN_LETT_OBLIQUE_CONTACT = 9  '  Oblique/Contact


Statement:
Public Const PAN_LETT_OBLIQUE_WEIGHTED = 10  '  Oblique/Weighted


Statement:
Public Const PAN_LETT_OBLIQUE_BOXED = 11  '  Oblique/Boxed


Statement:
Public Const PAN_LETT_OBLIQUE_FLATTENED = 12  '  Oblique/Flattened


Statement:
Public Const PAN_LETT_OBLIQUE_ROUNDED = 13  '  Oblique/Rounded


Statement:
Public Const PAN_LETT_OBLIQUE_OFF_CENTER = 14  '  Oblique/Off Center


Statement:
Public Const PAN_LETT_OBLIQUE_SQUARE = 15  '  Oblique/Square


Statement:
Public Const PAN_MIDLINE_STANDARD_TRIMMED = 2  '  Standard/Trimmed


Statement:
Public Const PAN_MIDLINE_STANDARD_POINTED = 3  '  Standard/Pointed


Statement:
Public Const PAN_MIDLINE_STANDARD_SERIFED = 4  '  Standard/Serifed


Statement:
Public Const PAN_MIDLINE_HIGH_TRIMMED = 5  '  High/Trimmed


Statement:
Public Const PAN_MIDLINE_HIGH_POINTED = 6  '  High/Pointed


Statement:
Public Const PAN_MIDLINE_HIGH_SERIFED = 7  '  High/Serifed


Statement:
Public Const PAN_MIDLINE_CONSTANT_TRIMMED = 8  '  Constant/Trimmed


Statement:
Public Const PAN_MIDLINE_CONSTANT_POINTED = 9  '  Constant/Pointed


Statement:
Public Const PAN_MIDLINE_CONSTANT_SERIFED = 10  '  Constant/Serifed


Statement:
Public Const PAN_MIDLINE_LOW_TRIMMED = 11  '  Low/Trimmed


Statement:
Public Const PAN_MIDLINE_LOW_POINTED = 12  '  Low/Pointed


Statement:
Public Const PAN_MIDLINE_LOW_SERIFED = 13  '  Low/Serifed


Statement:
Public Const PAN_XHEIGHT_CONSTANT_SMALL = 2  '  Constant/Small


Statement:
Public Const PAN_XHEIGHT_CONSTANT_STD = 3  '  Constant/Standard


Statement:
Public Const PAN_XHEIGHT_CONSTANT_LARGE = 4  '  Constant/Large


Statement:
Public Const PAN_XHEIGHT_DUCKING_SMALL = 5  '  Ducking/Small


Statement:
Public Const PAN_XHEIGHT_DUCKING_STD = 6  '  Ducking/Standard


Statement:
Public Const PAN_XHEIGHT_DUCKING_LARGE = 7  '  Ducking/Large


Statement:
Type EXTLOGFONT
        elfLogFont  As LOGFONT
        elfFullName(LF_FULLFACESIZE) As Byte
        elfStyle(LF_FACESIZE) As Byte
        elfVersion As Long
        elfStyleSize As Long
        elfMatch As Long
        elfReserved As Long
        elfVendorId(ELF_VENDOR_SIZE) As Byte
        elfCulture As Long
        elfPanose As PANOSE
End Type


Statement:
Public Const PC_RESERVED = &H1  '  palette index used for animation


Statement:
Public Const PC_EXPLICIT = &H2  '  palette index is explicit to device


Statement:
Public Const PC_NOCOLLAPSE = &H4        '  do not match color to system palette


Statement:
Public Const MM_MAX_FIXEDSCALE = MM_TWIPS


Statement:
Public Const HS_HORIZONTAL = 0              '  -----


Statement:
Public Const HS_VERTICAL = 1                '


Statement:
Public Const HS_FDIAGONAL = 2               '  \\\\\


Statement:
Public Const HS_BDIAGONAL = 3               '  /////


Statement:
Public Const HS_CROSS = 4                   '  +++++


Statement:
Public Const HS_DIAGCROSS = 5               '  xxxxx


Statement:
Public Const PS_DASH = 1                    '  -------


Statement:
Public Const PS_DOT = 2                     '  .......


Statement:
Public Const PS_DASHDOT = 3                 '  _._._._


Statement:
Public Const PS_DASHDOTDOT = 4              '  _.._.._


Statement:
Public Const DRIVERVERSION = 0      '  Device driver version


Statement:
Public Const TECHNOLOGY = 2         '  Device classification


Statement:
Public Const HORZSIZE = 4           '  Horizontal size in millimeters


Statement:
Public Const VERTSIZE = 6           '  Vertical size in millimeters


Statement:
Public Const HORZRES = 8            '  Horizontal width in pixels


Statement:
Public Const VERTRES = 10           '  Vertical width in pixels


Statement:
Public Const BITSPIXEL = 12         '  Number of bits per pixel


Statement:
Public Const PLANES = 14            '  Number of planes


Statement:
Public Const NUMBRUSHES = 16        '  Number of brushes the device has


Statement:
Public Const NUMPENS = 18           '  Number of pens the device has


Statement:
Public Const NUMMARKERS = 20        '  Number of markers the device has


Statement:
Public Const NUMFONTS = 22          '  Number of fonts the device has


Statement:
Public Const NUMCOLORS = 24         '  Number of colors the device supports


Statement:
Public Const PDEVICESIZE = 26       '  Size required for device descriptor


Statement:
Public Const CURVECAPS = 28         '  Curve capabilities


Statement:
Public Const LINECAPS = 30          '  Line capabilities


Statement:
Public Const POLYGONALCAPS = 32     '  Polygonal capabilities


Statement:
Public Const TEXTCAPS = 34          '  Text capabilities


Statement:
Public Const CLIPCAPS = 36          '  Clipping capabilities


Statement:
Public Const RASTERCAPS = 38        '  Bitblt capabilities


Statement:
Public Const ASPECTX = 40           '  Length of the X leg


Statement:
Public Const ASPECTY = 42           '  Length of the Y leg


Statement:
Public Const ASPECTXY = 44          '  Length of the hypotenuse


Statement:
Public Const LOGPIXELSX = 88        '  Logical pixels/inch in X


Statement:
Public Const LOGPIXELSY = 90        '  Logical pixels/inch in Y


Statement:
Public Const SIZEPALETTE = 104      '  Number of entries in physical palette


Statement:
Public Const NUMRESERVED = 106      '  Number of reserved entries in palette


Statement:
Public Const COLORRES = 108         '  Actual color resolution


Statement:
Public Const PHYSICALWIDTH = 110 '  Physical Width in device units


Statement:
Public Const PHYSICALHEIGHT = 111 '  Physical Height in device units


Statement:
Public Const PHYSICALOFFSETX = 112 '  Physical Printable Area x margin


Statement:
Public Const PHYSICALOFFSETY = 113 '  Physical Printable Area y margin


Statement:
Public Const SCALINGFACTORX = 114 '  Scaling factor x


Statement:
Public Const SCALINGFACTORY = 115 '  Scaling factor y


Statement:
Public Const DT_PLOTTER = 0             '  Vector plotter


Statement:
Public Const DT_RASDISPLAY = 1          '  Raster display


Statement:
Public Const DT_RASPRINTER = 2          '  Raster printer


Statement:
Public Const DT_RASCAMERA = 3           '  Raster camera


Statement:
Public Const DT_CHARSTREAM = 4          '  Character-stream, PLP


Statement:
Public Const DT_METAFILE = 5            '  Metafile, VDM


Statement:
Public Const DT_DISPFILE = 6            '  Display-file


Statement:
Public Const CC_NONE = 0                '  Curves not supported


Statement:
Public Const CC_CIRCLES = 1             '  Can do circles


Statement:
Public Const CC_PIE = 2                 '  Can do pie wedges


Statement:
Public Const CC_CHORD = 4               '  Can do chord arcs


Statement:
Public Const CC_ELLIPSES = 8            '  Can do ellipese


Statement:
Public Const CC_WIDE = 16               '  Can do wide lines


Statement:
Public Const CC_STYLED = 32             '  Can do styled lines


Statement:
Public Const CC_WIDESTYLED = 64         '  Can do wide styled lines


Statement:
Public Const CC_INTERIORS = 128 '  Can do interiors


Statement:
Public Const LC_NONE = 0                '  Lines not supported


Statement:
Public Const LC_POLYLINE = 2            '  Can do polylines


Statement:
Public Const LC_MARKER = 4              '  Can do markers


Statement:
Public Const LC_POLYMARKER = 8          '  Can do polymarkers


Statement:
Public Const LC_WIDE = 16               '  Can do wide lines


Statement:
Public Const LC_STYLED = 32             '  Can do styled lines


Statement:
Public Const LC_WIDESTYLED = 64         '  Can do wide styled lines


Statement:
Public Const LC_INTERIORS = 128 '  Can do interiors


Statement:
Public Const PC_NONE = 0                '  Polygonals not supported


Statement:
Public Const PC_POLYGON = 1             '  Can do polygons


Statement:
Public Const PC_RECTANGLE = 2           '  Can do rectangles


Statement:
Public Const PC_WINDPOLYGON = 4         '  Can do winding polygons


Statement:
Public Const PC_TRAPEZOID = 4           '  Can do trapezoids


Statement:
Public Const PC_SCANLINE = 8            '  Can do scanlines


Statement:
Public Const PC_WIDE = 16               '  Can do wide borders


Statement:
Public Const PC_STYLED = 32             '  Can do styled borders


Statement:
Public Const PC_WIDESTYLED = 64         '  Can do wide styled borders


Statement:
Public Const PC_INTERIORS = 128 '  Can do interiors


Statement:
Public Const CP_NONE = 0                '  No clipping of output


Statement:
Public Const CP_RECTANGLE = 1           '  Output clipped to rects


Statement:
Public Const CP_REGION = 2              '


Statement:
Public Const TC_OP_CHARACTER = &H1              '  Can do OutputPrecision   CHARACTER


Statement:
Public Const TC_OP_STROKE = &H2                 '  Can do OutputPrecision   STROKE


Statement:
Public Const TC_CP_STROKE = &H4                 '  Can do ClipPrecision     STROKE


Statement:
Public Const TC_CR_90 = &H8                     '  Can do CharRotAbility    90


Statement:
Public Const TC_CR_ANY = &H10                   '  Can do CharRotAbility    ANY


Statement:
Public Const TC_SF_X_YINDEP = &H20              '  Can do ScaleFreedom      X_YINDEPENDENT


Statement:
Public Const TC_SA_DOUBLE = &H40                '  Can do ScaleAbility      DOUBLE


Statement:
Public Const TC_SA_INTEGER = &H80               '  Can do ScaleAbility      INTEGER


Statement:
Public Const TC_SA_CONTIN = &H100               '  Can do ScaleAbility      CONTINUOUS


Statement:
Public Const TC_EA_DOUBLE = &H200               '  Can do EmboldenAbility   DOUBLE


Statement:
Public Const TC_IA_ABLE = &H400                 '  Can do ItalisizeAbility  ABLE


Statement:
Public Const TC_UA_ABLE = &H800                 '  Can do UnderlineAbility  ABLE


Statement:
Public Const TC_SO_ABLE = &H1000                '  Can do StrikeOutAbility  ABLE


Statement:
Public Const TC_RA_ABLE = &H2000                '  Can do RasterFontAble    ABLE


Statement:
Public Const TC_VA_ABLE = &H4000                '  Can do VectorFontAble    ABLE


Statement:
Public Const TC_SCROLLBLT = &H10000             '  do text scroll with blt


Statement:
Public Const RC_BITBLT = 1                  '  Can do standard BLT.


Statement:
Public Const RC_BANDING = 2                 '  Device requires banding support


Statement:
Public Const RC_SCALING = 4                 '  Device requires scaling support


Statement:
Public Const RC_BITMAP64 = 8                '  Device can support >64K bitmap


Statement:
Public Const RC_GDI20_OUTPUT = &H10             '  has 2.0 output calls


Statement:
Public Const RC_DI_BITMAP = &H80                '  supports DIB to memory


Statement:
Public Const RC_PALETTE = &H100                 '  supports a palette


Statement:
Public Const RC_DIBTODEV = &H200                '  supports DIBitsToDevice


Statement:
Public Const RC_BIGFONT = &H400                 '  supports >64K fonts


Statement:
Public Const RC_STRETCHBLT = &H800              '  supports StretchBlt


Statement:
Public Const RC_FLOODFILL = &H1000              '  supports FloodFill


Statement:
Public Const RC_STRETCHDIB = &H2000             '  supports StretchDIBits


Statement:
Public Const DIB_RGB_COLORS = 0 '  color table in RGBs


Statement:
Public Const DIB_PAL_COLORS = 1 '  color table in palette indices


Statement:
Public Const DIB_PAL_INDICES = 2 '  No color table indices into surf palette


Statement:
Public Const DIB_PAL_PHYSINDICES = 2 '  No color table indices into surf palette


Statement:
Public Const DIB_PAL_LOGINDICES = 4 '  No color table indices into DC palette


Statement:
Public Const CBM_CREATEDIB = &H2      '  create DIB bitmap


Statement:
Public Const CBM_INIT = &H4           '  initialize bitmap


Statement:
Type DEVMODE
        dmDeviceName As String * CCHDEVICENAME
        dmSpecVersion As Integer
        dmDriverVersion As Integer
        dmSize As Integer
        dmDriverExtra As Integer
        dmFields As Long
        dmOrientation As Integer
        dmPaperSize As Integer
        dmPaperLength As Integer
        dmPaperWidth As Integer
        dmScale As Integer
        dmCopies As Integer
        dmDefaultSource As Integer
        dmPrintQuality As Integer
        dmColor As Integer
        dmDuplex As Integer
        dmYResolution As Integer
        dmTTOption As Integer
        dmCollate As Integer
        dmFormName As String * CCHFORMNAME
        dmUnusedPadding As Integer
        dmBitsPerPel As Integer
        dmPelsWidth As Long
        dmPelsHeight As Long
        dmDisplayFlags As Long
        dmDisplayFrequency As Long
End Type


Statement:
Public Const DM_COLLATE As Long = &H8000


Statement:
Public Const DM_FORMNAME As Long = &H10000


Statement:
Public Const DMPAPER_FIRST = DMPAPER_LETTER


Statement:
Public Const DMPAPER_LETTERSMALL = 2            '  Letter Small 8 1/2 x 11 in


Statement:
Public Const DMPAPER_TABLOID = 3                '  Tabloid 11 x 17 in


Statement:
Public Const DMPAPER_LEDGER = 4                 '  Ledger 17 x 11 in


Statement:
Public Const DMPAPER_LEGAL = 5                  '  Legal 8 1/2 x 14 in


Statement:
Public Const DMPAPER_STATEMENT = 6              '  Statement 5 1/2 x 8 1/2 in


Statement:
Public Const DMPAPER_EXECUTIVE = 7              '  Executive 7 1/4 x 10 1/2 in


Statement:
Public Const DMPAPER_A3 = 8                     '  A3 297 x 420 mm


Statement:
Public Const DMPAPER_A4 = 9                     '  A4 210 x 297 mm


Statement:
Public Const DMPAPER_A4SMALL = 10               '  A4 Small 210 x 297 mm


Statement:
Public Const DMPAPER_A5 = 11                    '  A5 148 x 210 mm


Statement:
Public Const DMPAPER_B4 = 12                    '  B4 250 x 354


Statement:
Public Const DMPAPER_B5 = 13                    '  B5 182 x 257 mm


Statement:
Public Const DMPAPER_FOLIO = 14                 '  Folio 8 1/2 x 13 in


Statement:
Public Const DMPAPER_QUARTO = 15                '  Quarto 215 x 275 mm


Statement:
Public Const DMPAPER_10X14 = 16                 '  10x14 in


Statement:
Public Const DMPAPER_11X17 = 17                 '  11x17 in


Statement:
Public Const DMPAPER_NOTE = 18                  '  Note 8 1/2 x 11 in


Statement:
Public Const DMPAPER_ENV_9 = 19                 '  Envelope #9 3 7/8 x 8 7/8


Statement:
Public Const DMPAPER_ENV_10 = 20                '  Envelope #10 4 1/8 x 9 1/2


Statement:
Public Const DMPAPER_ENV_11 = 21                '  Envelope #11 4 1/2 x 10 3/8


Statement:
Public Const DMPAPER_ENV_12 = 22                '  Envelope #12 4 \276 x 11


Statement:
Public Const DMPAPER_ENV_14 = 23                '  Envelope #14 5 x 11 1/2


Statement:
Public Const DMPAPER_CSHEET = 24                '  C size sheet


Statement:
Public Const DMPAPER_DSHEET = 25                '  D size sheet


Statement:
Public Const DMPAPER_ESHEET = 26                '  E size sheet


Statement:
Public Const DMPAPER_ENV_DL = 27                '  Envelope DL 110 x 220mm


Statement:
Public Const DMPAPER_ENV_C5 = 28                '  Envelope C5 162 x 229 mm


Statement:
Public Const DMPAPER_ENV_C3 = 29                '  Envelope C3  324 x 458 mm


Statement:
Public Const DMPAPER_ENV_C4 = 30                '  Envelope C4  229 x 324 mm


Statement:
Public Const DMPAPER_ENV_C6 = 31                '  Envelope C6  114 x 162 mm


Statement:
Public Const DMPAPER_ENV_C65 = 32               '  Envelope C65 114 x 229 mm


Statement:
Public Const DMPAPER_ENV_B4 = 33                '  Envelope B4  250 x 353 mm


Statement:
Public Const DMPAPER_ENV_B5 = 34                '  Envelope B5  176 x 250 mm


Statement:
Public Const DMPAPER_ENV_B6 = 35                '  Envelope B6  176 x 125 mm


Statement:
Public Const DMPAPER_ENV_ITALY = 36             '  Envelope 110 x 230 mm


Statement:
Public Const DMPAPER_ENV_MONARCH = 37           '  Envelope Monarch 3.875 x 7.5 in


Statement:
Public Const DMPAPER_ENV_PERSONAL = 38          '  6 3/4 Envelope 3 5/8 x 6 1/2 in


Statement:
Public Const DMPAPER_FANFOLD_US = 39            '  US Std Fanfold 14 7/8 x 11 in


Statement:
Public Const DMPAPER_FANFOLD_STD_GERMAN = 40    '  German Std Fanfold 8 1/2 x 12 in


Statement:
Public Const DMPAPER_FANFOLD_LGL_GERMAN = 41    '  German Legal Fanfold 8 1/2 x 13 in


Statement:
Public Const DMPAPER_LAST = DMPAPER_FANFOLD_LGL_GERMAN


Statement:
Public Const DMBIN_LAST = DMBIN_CASSETTE


Statement:
Public Const DMBIN_USER = 256               '  device specific bins start here


Statement:
Public Const DMTT_BITMAP = 1            '  print TT fonts as graphics


Statement:
Public Const DMTT_DOWNLOAD = 2          '  download TT fonts as soft fonts


Statement:
Public Const DMTT_SUBDEV = 3            '  substitute device fonts for TT fonts


Statement:
Type RGNDATAHEADER
        dwSize As Long
        iType As Long
        nCount As Long
        nRgnSize As Long
        rcBound As Rect
End Type


Statement:
Type RGNDATA
        rdh As RGNDATAHEADER
        Buffer As Byte
End Type


Statement:
Type ABC
        abcA As Long
        abcB As Long
        abcC As Long
End Type


Statement:
Type ABCFLOAT
        abcfA As Double
        abcfB As Double
        abcfC As Double
End Type


Statement:
Type OUTLINETEXTMETRIC
        otmSize As Long
        otmTextMetrics As TEXTMETRIC
        otmFiller As Byte
        otmPanoseNumber As PANOSE
        otmfsSelection As Long
        otmfsType As Long
        otmsCharSlopeRise As Long
        otmsCharSlopeRun As Long
        otmItalicAngle As Long
        otmEMSquare As Long
        otmAscent As Long
        otmDescent As Long
        otmLineGap As Long
        otmsCapEmHeight As Long
        otmsXHeight As Long
        otmrcFontBox As Rect
        otmMacAscent As Long
        otmMacDescent As Long
        otmMacLineGap As Long
        otmusMinimumPPEM As Long
        otmptSubscriptSize As POINTAPI
        otmptSubscriptOffset As POINTAPI
        otmptSuperscriptSize As POINTAPI
        otmptSuperscriptOffset As POINTAPI
        otmsStrikeoutSize As Long
        otmsStrikeoutPosition As Long
        otmsUnderscorePosition As Long
        otmsUnderscoreSize As Long
        otmpFamilyName As String
        otmpFaceName As String
        otmpStyleName As String
        otmpFullName As String
End Type


Statement:
Type POLYTEXT
        x As Long
        y As Long
        n As Long
        lpStr As String
        uiFlags As Long
        rcl As Rect
        pdx As Long
End Type


Statement:
Type FIXED
        fract As Integer
        Value As Integer
End Type


Statement:
Type MAT2
        eM11 As FIXED
        eM12 As FIXED
        eM21 As FIXED
        eM22 As FIXED
End Type


Statement:
Type GLYPHMETRICS
        gmBlackBoxX As Long
        gmBlackBoxY As Long
        gmptGlyphOrigin As POINTAPI
        gmCellIncX As Integer
        gmCellIncY As Integer
End Type


Statement:
Type POINTFX
        x As FIXED
        y As FIXED
End Type


Statement:
Type TTPOLYCURVE
        wType As Integer
        cpfx As Integer
        apfx As POINTFX
End Type


Statement:
Type TTPOLYGONHEADER
        cb As Long
        dwType As Long
        pfxStart As POINTFX
End Type


Statement:
Type RASTERIZER_STATUS
        nSize As Integer
        wFlags As Integer
        nLanguageID As Integer
End Type


Statement:
Declare Function AddFontResource Lib "gdi32" Alias "AddFontResourceA" (ByVal lpFileName As String) As Long


Statement:
Declare Function AnimatePalette Lib "gdi32" Alias "AnimatePaletteA" (ByVal hPalette As Long, ByVal wStartIndex As Long, ByVal wNumEntries As Long, lpPaletteColors As PALETTEENTRY) As Long


Statement:
Declare Function Arc Lib "gdi32" Alias "Arc" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long, ByVal X4 As Long, ByVal Y4 As Long) As Long


Statement:
Declare Function BitBlt Lib "gdi32" Alias "BitBlt" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long


Statement:
Declare Function CancelDC Lib "gdi32" Alias "CancelDC" (ByVal hdc As Long) As Long


Statement:
Declare Function Chord Lib "gdi32" Alias "Chord" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long, ByVal X4 As Long, ByVal Y4 As Long) As Long


Statement:
Declare Function CloseMetaFile Lib "gdi32" Alias "CloseMetaFile" (ByVal hMF As Long) As Long


Statement:
Declare Function CombineRgn Lib "gdi32" Alias "CombineRgn" (ByVal hDestRgn As Long, ByVal hSrcRgn1 As Long, ByVal hSrcRgn2 As Long, ByVal nCombineMode As Long) As Long


Statement:
Declare Function CopyMetaFile Lib "gdi32" Alias "CopyMetaFileA" (ByVal hMF As Long, ByVal lpFileName As String) As Long


Statement:
Declare Function CreateBitmap Lib "gdi32" Alias "CreateBitmap" (ByVal nWidth As Long, ByVal nHeight As Long, ByVal nPlanes As Long, ByVal nBitCount As Long, lpBits As Any) As Long


Statement:
Declare Function CreateBitmapIndirect Lib "gdi32" Alias "CreateBitmapIndirect" (lpBitmap As BITMAP) As Long


Statement:
Declare Function CreateBrushIndirect Lib "gdi32" Alias "CreateBrushIndirect" (lpLogBrush As LOGBRUSH) As Long


Statement:
Declare Function CreateCompatibleBitmap Lib "gdi32" Alias "CreateCompatibleBitmap" (ByVal hdc As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long


Statement:
Declare Function CreateDiscardableBitmap Lib "gdi32" Alias "CreateDiscardableBitmap" (ByVal hdc As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long


Statement:
Declare Function CreateCompatibleDC Lib "gdi32" Alias "CreateCompatibleDC" (ByVal hdc As Long) As Long


Statement:
Declare Function CreateDC Lib "gdi32" Alias "CreateDCA" (ByVal lpDriverName As String, ByVal lpDeviceName As String, ByVal lpOutput As String, lpInitData As DEVMODE) As Long


Statement:
Declare Function CreateDIBitmap Lib "gdi32" Alias "CreateDIBitmap" (ByVal hdc As Long, lpInfoHeader As BITMAPINFOHEADER, ByVal dwUsage As Long, lpInitBits As Any, lpInitInfo As BITMAPINFO, ByVal wUsage As Long) As Long


Statement:
Declare Function CreateDIBPatternBrush Lib "gdi32" Alias "CreateDIBPatternBrush" (ByVal hPackedDIB As Long, ByVal wUsage As Long) As Long


Statement:
Declare Function CreateDIBPatternBrushPt Lib "gdi32" Alias "CreateDIBPatternBrushPt" (lpPackedDIB As Any, ByVal iUsage As Long) As Long


Statement:
Declare Function CreateEllipticRgnIndirect Lib "gdi32" Alias "CreateEllipticRgnIndirect" (lpRect As Rect) As Long


Statement:
Declare Function CreateEllipticRgn Lib "gdi32" Alias "CreateEllipticRgn" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long


Statement:
Declare Function CreateFontIndirect Lib "gdi32" Alias "CreateFontIndirectA" (lpLogFont As LOGFONT) As Long


Statement:
Declare Function CreateFont Lib "gdi32" Alias "CreateFontA" (ByVal H As Long, ByVal W As Long, ByVal E As Long, ByVal O As Long, ByVal W As Long, ByVal I As Long, ByVal u As Long, ByVal S As Long, ByVal C As Long, ByVal OP As Long, ByVal CP As Long, ByVal Q As Long, ByVal PAF As Long, ByVal F As String) As Long


Statement:
Declare Function CreateHatchBrush Lib "gdi32" Alias "CreateHatchBrush" (ByVal nIndex As Long, ByVal crColor As Long) As Long


Statement:
Declare Function CreateIC Lib "gdi32" Alias "CreateICA" (ByVal lpDriverName As String, ByVal lpDeviceName As String, ByVal lpOutput As String, lpInitData As DEVMODE) As Long


Statement:
Declare Function CreateMetaFile Lib "gdi32" Alias "CreateMetaFileA" (ByVal lpString As String) As Long


Statement:
Declare Function CreatePalette Lib "gdi32" Alias "CreatePalette" (lpLogPalette As LOGPALETTE) As Long


Statement:
Declare Function CreatePen Lib "gdi32" Alias "CreatePen" (ByVal nPenStyle As Long, ByVal nWidth As Long, ByVal crColor As Long) As Long


Statement:
Declare Function CreatePenIndirect Lib "gdi32" Alias "CreatePenIndirect" (lpLogPen As LOGPEN) As Long


Statement:
Declare Function CreateRectRgn Lib "gdi32" Alias "CreateRectRgn" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long


Statement:
Declare Function CreateRectRgnIndirect Lib "gdi32" Alias "CreateRectRgnIndirect" (lpRect As RECT) As Long


Statement:
Declare Function CreatePolyPolygonRgn Lib "gdi32" Alias "CreatePolyPolygonRgn" (lpPoint As POINTAPI, lpPolyCounts As Long, ByVal nCount As Long, ByVal nPolyFillMode As Long) As Long


Statement:
Declare Function CreatePatternBrush Lib "gdi32" Alias "CreatePatternBrush" (ByVal hBitmap As Long) As Long


Statement:
Declare Function CreateRoundRectRgn Lib "gdi32" Alias "CreateRoundRectRgn" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long) As Long


Statement:
Declare Function CreateScalableFontResource Lib "gdi32" Alias "CreateScalableFontResourceA" (ByVal fHidden As Long, ByVal lpszResourceFile As String, ByVal lpszFontFile As String, ByVal lpszCurrentPath As String) As Long


Statement:
Declare Function CreateSolidBrush Lib "gdi32" Alias "CreateSolidBrush" (ByVal crColor As Long) As Long


Statement:
Declare Function DeleteDC Lib "gdi32" Alias "DeleteDC" (ByVal hdc As Long) As Long


Statement:
Declare Function DeleteObject Lib "gdi32" Alias "DeleteObject" (ByVal hObject As Long) As Long


Statement:
Declare Function DeleteMetaFile Lib "gdi32" Alias "DeleteMetaFile" (ByVal hMF As Long) As Long


Statement:
Declare Function DeviceCapabilities Lib "winspool.drv" Alias "DeviceCapabilitiesA" (ByVal lpDeviceName As String, ByVal lpPort As String, ByVal iIndex As Long, ByVal lpOutput As String, lpDevMode As DEVMODE) As Long


Statement:
Declare Function Ellipse Lib "gdi32" Alias "Ellipse" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long


Statement:
Declare Function EqualRgn Lib "gdi32" Alias "EqualRgn" (ByVal hSrcRgn1 As Long, ByVal hSrcRgn2 As Long) As Long


Statement:
Declare Function Escape Lib "gdi32" Alias "Escape" (ByVal hdc As Long, ByVal nEscape As Long, ByVal nCount As Long, ByVal lpInData As String, lpOutData As Any) As Long


Statement:
Declare Function ExtEscape Lib "gdi32" Alias "ExtEscape" (ByVal hdc As Long, ByVal nEscape As Long, ByVal cbInput As Long, ByVal lpszInData As String, ByVal cbOutput As Long, ByVal lpszOutData As String) As Long


Statement:
Declare Function DrawEscape Lib "gdi32" Alias "DrawEscape" (ByVal hdc As Long, ByVal nEscape As Long, ByVal cbInput As Long, ByVal lpszInData As String) As Long


Statement:
Declare Function ExcludeClipRect Lib "gdi32" Alias "ExcludeClipRect" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long


Statement:
Declare Function ExtCreateRegion Lib "gdi32" Alias "ExtCreateRegion" (lpXform As xform, ByVal nCount As Long, lpRgnData As RGNDATA) As Long


Statement:
Declare Function ExtFloodFill Lib "gdi32" Alias "ExtFloodFill" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long, ByVal wFillType As Long) As Long


Statement:
Declare Function FillRgn Lib "gdi32" Alias "FillRgn" (ByVal hdc As Long, ByVal hRgn As Long, ByVal hBrush As Long) As Long


Statement:
Declare Function FrameRgn Lib "gdi32" Alias "FrameRgn" (ByVal hdc As Long, ByVal hRgn As Long, ByVal hBrush As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long


Statement:
Declare Function FloodFill Lib "gdi32" Alias "FloodFill" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long) As Long


Statement:
Declare Function GetROP2 Lib "gdi32" Alias "GetROP2" (ByVal hdc As Long) As Long


Statement:
Declare Function GetAspectRatioFilterEx Lib "gdi32" Alias "GetAspectRatioFilterEx" (ByVal hdc As Long, lpAspectRatio As SIZE) As Long


Statement:
Declare Function GetBkColor Lib "gdi32" Alias "GetBkColor" (ByVal hdc As Long) As Long


Statement:
Declare Function GetBkMode Lib "gdi32" Alias "GetBkMode" (ByVal hdc As Long) As Long


Statement:
Declare Function GetBitmapBits Lib "gdi32" Alias "GetBitmapBits" (ByVal hBitmap As Long, ByVal dwCount As Long, lpBits As Any) As Long


Statement:
Declare Function GetBitmapDimensionEx Lib "gdi32" Alias "GetBitmapDimensionEx" (ByVal hBitmap As Long, lpDimension As SIZE) As Long


Statement:
Declare Function GetBoundsRect Lib "gdi32" Alias "GetBoundsRect" (ByVal hdc As Long, lprcBounds As RECT, ByVal flags As Long) As Long


Statement:
Declare Function GetCharWidth Lib "gdi32" Alias "GetCharWidthA" (ByVal hdc As Long, ByVal wFirstChar As Long, ByVal wLastChar As Long, lpBuffer As Long) As Long


Statement:
Declare Function GetCharWidth32 Lib "gdi32" Alias "GetCharWidth32A" (ByVal hdc As Long, ByVal iFirstChar As Long, ByVal iLastChar As Long, lpBuffer As Long) As Long


Statement:
Declare Function GetCharWidthFloat Lib "gdi32" Alias "GetCharWidthFloatA" (ByVal hdc As Long, ByVal iFirstChar As Long, ByVal iLastChar As Long, pxBuffer As Double) As Long


Statement:
Declare Function GetCharABCWidths Lib "gdi32" Alias "GetCharABCWidthsA" (ByVal hdc As Long, ByVal uFirstChar As Long, ByVal uLastChar As Long, lpabc As ABC) As Long


Statement:
Declare Function GetCharABCWidthsFloat Lib "gdi32" Alias "GetCharABCWidthsFloatA" (ByVal hdc As Long, ByVal iFirstChar As Long, ByVal iLastChar As Long, lpABCF As ABCFLOAT) As Long


Statement:
Declare Function GetClipBox Lib "gdi32" Alias "GetClipBox" (ByVal hdc As Long, lpRect As RECT) As Long


Statement:
Declare Function GetClipRgn Lib "gdi32" Alias "GetClipRgn" (ByVal hdc As Long, ByVal hRgn As Long) As Long


Statement:
Declare Function GetMetaRgn Lib "gdi32" Alias "GetMetaRgn" (ByVal hdc As Long, ByVal hRgn As Long) As Long


Statement:
Declare Function GetCurrentObject Lib "gdi32" Alias "GetCurrentObject" (ByVal hdc As Long, ByVal uObjectType As Long) As Long


Statement:
Declare Function GetCurrentPositionEx Lib "gdi32" Alias "GetCurrentPositionEx" (ByVal hdc As Long, lpPoint As POINTAPI) As Long


Statement:
Declare Function GetDeviceCaps Lib "gdi32" Alias "GetDeviceCaps" (ByVal hdc As Long, ByVal nIndex As Long) As Long


Statement:
Declare Function GetDIBits Lib "gdi32" Alias "GetDIBits" (ByVal aHDC As Long, ByVal hBitmap As Long, ByVal nStartScan As Long, ByVal nNumScans As Long, lpBits As Any, lpBI As BITMAPINFO, ByVal wUsage As Long) As Long


Statement:
Declare Function GetFontData Lib "gdi32" Alias "GetFontDataA" (ByVal hdc As Long, ByVal dwTable As Long, ByVal dwOffset As Long, lpvBuffer As Any, ByVal cbData As Long) As Long


Statement:
Declare Function GetGlyphOutline Lib "gdi32" Alias "GetGlyphOutlineA" (ByVal hdc As Long, ByVal uChar As Long, ByVal fuFormat As Long, lpgm As GLYPHMETRICS, ByVal cbBuffer As Long, lpBuffer As Any, lpmat2 As MAT2) As Long


Statement:
Declare Function GetGraphicsMode Lib "gdi32" Alias "GetGraphicsMode" (ByVal hdc As Long) As Long


Statement:
Declare Function GetMapMode Lib "gdi32" Alias "GetMapMode" (ByVal hdc As Long) As Long


Statement:
Declare Function GetMetaFileBitsEx Lib "gdi32" Alias "GetMetaFileBitsEx" (ByVal hMF As Long, ByVal nSize As Long, lpvData As Any) As Long


Statement:
Declare Function GetMetaFile Lib "gdi32" Alias "GetMetaFileA" (ByVal lpFileName As String) As Long


Statement:
Declare Function GetNearestColor Lib "gdi32" Alias "GetNearestColor" (ByVal hdc As Long, ByVal crColor As Long) As Long


Statement:
Declare Function GetNearestPaletteIndex Lib "gdi32" Alias "GetNearestPaletteIndex" (ByVal hPalette As Long, ByVal crColor As Long) As Long


Statement:
Declare Function GetObjectType Lib "gdi32" Alias "GetObjectType" (ByVal hgdiobj As Long) As Long


Statement:
Declare Function GetOutlineTextMetrics Lib "gdi32" Alias "GetOutlineTextMetricsA" (ByVal hdc As Long, ByVal cbData As Long, lpotm As OUTLINETEXTMETRIC) As Long


Statement:
Declare Function GetPaletteEntries Lib "gdi32" Alias "GetPaletteEntries" (ByVal hPalette As Long, ByVal wStartIndex As Long, ByVal wNumEntries As Long, lpPaletteEntries As PALETTEENTRY) As Long


Statement:
Declare Function GetPixel Lib "gdi32" Alias "GetPixel" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long


Statement:
Declare Function GetPolyFillMode Lib "gdi32" Alias "GetPolyFillMode" (ByVal hdc As Long) As Long


Statement:
Declare Function GetRasterizerCaps Lib "gdi32" Alias "GetRasterizerCaps" (lpraststat As RASTERIZER_STATUS, ByVal cb As Long) As Long


Statement:
Declare Function GetRegionData Lib "gdi32" Alias "GetRegionDataA" (ByVal hRgn As Long, ByVal dwCount As Long, lpRgnData As RgnData) As Long


Statement:
Declare Function GetRgnBox Lib "gdi32" Alias "GetRgnBox" (ByVal hRgn As Long, lpRect As RECT) As Long


Statement:
Declare Function GetStockObject Lib "gdi32" Alias "GetStockObject" (ByVal nIndex As Long) As Long


Statement:
Declare Function GetStretchBltMode Lib "gdi32" Alias "GetStretchBltMode" (ByVal hdc As Long) As Long


Statement:
Declare Function GetSystemPaletteEntries Lib "gdi32" Alias "GetSystemPaletteEntries" (ByVal hdc As Long, ByVal wStartIndex As Long, ByVal wNumEntries As Long, lpPaletteEntries As PALETTEENTRY) As Long


Statement:
Declare Function GetSystemPaletteUse Lib "gdi32" Alias "GetSystemPaletteUse" (ByVal hdc As Long) As Long


Statement:
Declare Function GetTextCharacterExtra Lib "gdi32" Alias "GetTextCharacterExtraA" (ByVal hdc As Long) As Long


Statement:
Declare Function GetTextAlign Lib "gdi32" Alias "GetTextAlign" (ByVal hdc As Long) As Long


Statement:
Declare Function GetTextColor Lib "gdi32" Alias "GetTextColor" (ByVal hdc As Long) As Long


Statement:
Declare Function GetTextExtentPoint Lib "gdi32" Alias "GetTextExtentPointA" (ByVal hdc As Long, ByVal lpszString As String, ByVal cbString As Long, lpSize As SIZE) As Long


Statement:
Declare Function GetTextExtentPoint32 Lib "gdi32" Alias "GetTextExtentPoint32A" (ByVal hdc As Long, ByVal lpsz As String, ByVal cbString As Long, lpSize As SIZE) As Long


Statement:
Declare Function GetTextExtentExPoint Lib "gdi32" Alias "GetTextExtentExPointA" (ByVal hdc As Long, ByVal lpszStr As String, ByVal cchString As Long, ByVal nMaxExtent As Long, lpnFit As Long, alpDx As Long, lpSize As SIZE) As Long


Statement:
Declare Function GetViewportExtEx Lib "gdi32" Alias "GetViewportExtEx" (ByVal hdc As Long, lpSize As SIZE) As Long


Statement:
Declare Function GetViewportOrgEx Lib "gdi32" Alias "GetViewportOrgEx" (ByVal hdc As Long, lpPoint As POINTAPI) As Long


Statement:
Declare Function GetWindowExtEx Lib "gdi32" Alias "GetWindowExtEx" (ByVal hdc As Long, lpSize As SIZE) As Long


Statement:
Declare Function GetWindowOrgEx Lib "gdi32" Alias "GetWindowOrgEx" (ByVal hdc As Long, lpPoint As POINTAPI) As Long


Statement:
Declare Function IntersectClipRect Lib "gdi32" Alias "IntersectClipRect" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long


Statement:
Declare Function InvertRgn Lib "gdi32" Alias "InvertRgn" (ByVal hdc As Long, ByVal hRgn As Long) As Long


Statement:
Declare Function LineTo Lib "gdi32" Alias "LineTo" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long


Statement:
Declare Function MaskBlt Lib "gdi32" Alias "MaskBlt" (ByVal hdcDest As Long, ByVal nXDest As Long, ByVal nYDest As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hdcSrc As Long, ByVal nXSrc As Long, ByVal nYSrc As Long, ByVal hbmMask As Long, ByVal xMask As Long, ByVal yMask As Long, ByVal dwRop As Long) As Long


Statement:
Declare Function PlgBlt Lib "gdi32" Alias "PlgBlt" (ByVal hdcDest As Long, lpPoint As POINTAPI, ByVal hdcSrc As Long, ByVal nXSrc As Long, ByVal nYSrc As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hbmMask As Long, ByVal xMask As Long, ByVal yMask As Long) As Long


Statement:
Declare Function OffsetClipRgn Lib "gdi32" Alias "OffsetClipRgn" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long


Statement:
Declare Function OffsetRgn Lib "gdi32" Alias "OffsetRgn" (ByVal hRgn As Long, ByVal x As Long, ByVal y As Long) As Long


Statement:
Declare Function PatBlt Lib "gdi32" Alias "PatBlt" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal dwRop As Long) As Long


Statement:
Declare Function Pie Lib "gdi32" Alias "Pie" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long, ByVal X4 As Long, ByVal Y4 As Long) As Long


Statement:
Declare Function PlayMetaFile Lib "gdi32" Alias "PlayMetaFile" (ByVal hdc As Long, ByVal hMF As Long) As Long


Statement:
Declare Function PaintRgn Lib "gdi32" Alias "PaintRgn" (ByVal hdc As Long, ByVal hRgn As Long) As Long


Statement:
Declare Function PolyPolygon Lib "gdi32" Alias "PolyPolygon" (ByVal hdc As Long, lpPoint As POINTAPI, lpPolyCounts As Long, ByVal nCount As Long) As Long


Statement:
Declare Function PtInRegion Lib "gdi32" Alias "PtInRegion" (ByVal hRgn As Long, ByVal x As Long, ByVal y As Long) As Long


Statement:
Declare Function PtVisible Lib "gdi32" Alias "PtVisible" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long


Statement:
Declare Function RectVisible Lib "gdi32" Alias "RectVisible" (ByVal hdc As Long, lpRect As RECT) As Long


Statement:
Declare Function RectInRegion Lib "gdi32" Alias "RectInRegion" (ByVal hRgn As Long, lpRect As RECT) As Long


Statement:
Declare Function Rectangle Lib "gdi32" Alias "Rectangle" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long


Statement:
Declare Function RestoreDC Lib "gdi32" Alias "RestoreDC" (ByVal hdc As Long, ByVal nSavedDC As Long) As Long


Statement:
Declare Function ResetDC Lib "gdi32" Alias "ResetDCA" (ByVal hdc As Long, lpInitData As DEVMODE) As Long


Statement:
Declare Function RealizePalette Lib "gdi32" Alias "RealizePalette" (ByVal hdc As Long) As Long


Statement:
Declare Function RemoveFontResource Lib "gdi32" Alias "RemoveFontResourceA" (ByVal lpFileName As String) As Long


Statement:
Declare Function RoundRect Lib "gdi32" Alias "RoundRect" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long) As Long


Statement:
Declare Function ResizePalette Lib "gdi32" Alias "ResizePalette" (ByVal hPalette As Long, ByVal nNumEntries As Long) As Long


Statement:
Declare Function SaveDC Lib "gdi32" Alias "SaveDC" (ByVal hdc As Long) As Long


Statement:
Declare Function SelectClipRgn Lib "gdi32" Alias "SelectClipRgn" (ByVal hdc As Long, ByVal hRgn As Long) As Long


Statement:
Declare Function ExtSelectClipRgn Lib "gdi32" Alias "ExtSelectClipRgn" (ByVal hdc As Long, ByVal hRgn As Long, ByVal fnMode As Long) As Long


Statement:
Declare Function SetMetaRgn Lib "gdi32" Alias "SetMetaRgn" (ByVal hdc As Long) As Long


Statement:
Declare Function SelectObject Lib "user32" Alias "SelectObject" (ByVal hdc As Long, ByVal hObject As Long) As Long


Statement:
Declare Function SelectPalette Lib "gdi32" Alias "SelectPalette" (ByVal hdc As Long, ByVal hPalette As Long, ByVal bForceBackground As Long) As Long


Statement:
Declare Function SetBkColor Lib "gdi32" Alias "SetBkColor" (ByVal hdc As Long, ByVal crColor As Long) As Long


Statement:
Declare Function SetBkMode Lib "gdi32" Alias "SetBkMode" (ByVal hdc As Long, ByVal nBkMode As Long) As Long


Statement:
Declare Function SetBitmapBits Lib "gdi32" Alias "SetBitmapBits" (ByVal hBitmap As Long, ByVal dwCount As Long, lpBits As Any) As Long


Statement:
Declare Function SetBoundsRect Lib "gdi32" Alias "SetBoundsRect" (ByVal hdc As Long, lprcBounds As RECT, ByVal flags As Long) As Long


Statement:
Declare Function SetDIBits Lib "gdi32" Alias "SetDIBits" (ByVal hdc As Long, ByVal hBitmap As Long, ByVal nStartScan As Long, ByVal nNumScans As Long, lpBits As Any, lpBI As BITMAPINFO, ByVal wUsage As Long) As Long


Statement:
Declare Function SetDIBitsToDevice Lib "gdi32" Alias "SetDIBitsToDevice" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal dx As Long, ByVal dy As Long, ByVal SrcX As Long, ByVal SrcY As Long, ByVal Scan As Long, ByVal NumScans As Long, Bits As Any, BitsInfo As BITMAPINFO, ByVal wUsage As Long) As Long


Statement:
Declare Function SetMapperFlags Lib "gdi32" Alias "SetMapperFlags" (ByVal hdc As Long, ByVal dwFlag As Long) As Long


Statement:
Declare Function SetGraphicsMode Lib "gdi32" Alias "SetGraphicsMode" (ByVal hdc As Long, ByVal iMode As Long) As Long


Statement:
Declare Function SetMapMode Lib "gdi32" Alias "SetMapMode" (ByVal hdc As Long, ByVal nMapMode As Long) As Long


Statement:
Declare Function SetMetaFileBitsEx Lib "gdi32" Alias "SetMetaFileBitsEx" (ByVal nSize As Long, lpData As Byte) As Long


Statement:
Declare Function SetPaletteEntries Lib "gdi32" Alias "SetPaletteEntries" (ByVal hPalette As Long, ByVal wStartIndex As Long, ByVal wNumEntries As Long, lpPaletteEntries As PALETTEENTRY) As Long


Statement:
Declare Function SetPixel Lib "gdi32" Alias "SetPixel" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long) As Long


Statement:
Declare Function SetPixelV Lib "gdi32" Alias "SetPixelV" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long) As Long


Statement:
Declare Function SetPolyFillMode Lib "gdi32" Alias "SetPolyFillMode" (ByVal hdc As Long, ByVal nPolyFillMode As Long) As Long


Statement:
Declare Function StretchBlt Lib "gdi32" Alias "StretchBlt" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal nSrcWidth As Long, ByVal nSrcHeight As Long, ByVal dwRop As Long) As Long


Statement:
Declare Function SetRectRgn Lib "gdi32" Alias "SetRectRgn" (ByVal hRgn As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long


Statement:
Declare Function StretchDIBits Lib "gdi32" Alias "StretchDIBits" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal dx As Long, ByVal dy As Long, ByVal SrcX As Long, ByVal SrcY As Long, ByVal wSrcWidth As Long, ByVal wSrcHeight As Long, lpBits As Any, lpBitsInfo As BITMAPINFO, ByVal wUsage As Long, ByVal dwRop As Long) As Long


Statement:
Declare Function SetROP2 Lib "gdi32" Alias "SetROP2" (ByVal hdc As Long, ByVal nDrawMode As Long) As Long


Statement:
Declare Function SetStretchBltMode Lib "gdi32" Alias "SetStretchBltMode" (ByVal hdc As Long, ByVal nStretchMode As Long) As Long


Statement:
Declare Function SetSystemPaletteUse Lib "gdi32" Alias "SetSystemPaletteUse" (ByVal hdc As Long, ByVal wUsage As Long) As Long


Statement:
Declare Function SetTextCharacterExtra Lib "gdi32" Alias "SetTextCharacterExtraA" (ByVal hdc As Long, ByVal nCharExtra As Long) As Long


Statement:
Declare Function SetTextColor Lib "gdi32" Alias "SetTextColor" (ByVal hdc As Long, ByVal crColor As Long) As Long


Statement:
Declare Function SetTextAlign Lib "gdi32" Alias "SetTextAlign" (ByVal hdc As Long, ByVal wFlags As Long) As Long


Statement:
Declare Function SetTextJustification Lib "gdi32" Alias "SetTextJustification" (ByVal hdc As Long, ByVal nBreakExtra As Long, ByVal nBreakCount As Long) As Long


Statement:
Declare Function UpdateColors Lib "gdi32" Alias "UpdateColors" (ByVal hdc As Long) As Long


Statement:
Declare Function GetProcAddress Lib "kernel32" Alias "GetProcAddress" (ByVal hModule As Long, ByVal lpProcName As String) As Long


Statement:
Declare Function PlayMetaFileRecord Lib "gdi32" Alias "PlayMetaFileRecord" (ByVal hdc As Long, lpHandletable As HANDLETABLE, lpMetaRecord As METARECORD, ByVal nHandles As Long) As Long


Statement:
Declare Function CloseEnhMetaFile Lib "gdi32" Alias "CloseEnhMetaFile" (ByVal hdc As Long) As Long


Statement:
Declare Function CopyEnhMetaFile Lib "gdi32" Alias "CopyEnhMetaFileA" (ByVal hemfSrc As Long, ByVal lpszFile As String) As Long


Statement:
Declare Function CreateEnhMetaFile Lib "gdi32" Alias "CreateEnhMetaFileA" (ByVal hdcRef As Long, ByVal lpFileName As String, lpRect As RECT, ByVal lpDescription As String) As Long


Statement:
Declare Function DeleteEnhMetaFile Lib "gdi32" Alias "DeleteEnhMetaFile" (ByVal hemf As Long) As Long


Statement:
Declare Function EnumEnhMetaFile Lib "gdi32" Alias "EnumEnhMetaFile" (ByVal hdc As Long, ByVal hemf As Long, ByVal lpEnhMetaFunc As Long, lpData As Any, lpRect As RECT) As Long


Statement:
Declare Function GetEnhMetaFile Lib "gdi32" Alias "GetEnhMetaFileA" (ByVal lpszMetaFile As String) As Long


Statement:
Declare Function GetEnhMetaFileBits Lib "gdi32" Alias "GetEnhMetaFileBits" (ByVal hemf As Long, ByVal cbBuffer As Long, lpbBuffer As Byte) As Long


Statement:
Declare Function GetEnhMetaFileDescription Lib "gdi32" Alias "GetEnhMetaFileDescriptionA" (ByVal hemf As Long, ByVal cchBuffer As Long, ByVal lpszDescription As String) As Long


Statement:
Declare Function GetEnhMetaFileHeader Lib "gdi32" Alias "GetEnhMetaFileHeader" (ByVal hemf As Long, ByVal cbBuffer As Long, lpemh As ENHMETAHEADER) As Long


Statement:
Declare Function GetEnhMetaFilePaletteEntries Lib "gdi32" Alias "GetEnhMetaFilePaletteEntries" (ByVal hemf As Long, ByVal cEntries As Long, lppe As PALETTEENTRY) As Long


Statement:
Declare Function GetWinMetaFileBits Lib "gdi32" Alias "GetWinMetaFileBits" (ByVal hemf As Long, ByVal cbBuffer As Long, lpbBuffer As Byte, ByVal fnMapMode As Long, ByVal hdcRef As Long) As Long


Statement:
Declare Function PlayEnhMetaFile Lib "gdi32" Alias "PlayEnhMetaFile" (ByVal hdc As Long, ByVal hemf As Long, lpRect As RECT) As Long


Statement:
Declare Function PlayEnhMetaFileRecord Lib "gdi32" Alias "PlayEnhMetaFileRecord" (ByVal hdc As Long, lpHandletable As HANDLETABLE, lpEnhMetaRecord As ENHMETARECORD, ByVal nHandles As Long) As Long


Statement:
Declare Function SetEnhMetaFileBits Lib "gdi32" Alias "SetEnhMetaFileBits" (ByVal cbBuffer As Long, lpData As Byte) As Long


Statement:
Declare Function SetWinMetaFileBits Lib "gdi32" Alias "SetWinMetaFileBits" (ByVal cbBuffer As Long, lpbBuffer As Byte, ByVal hdcRef As Long, lpmfp As METAFILEPICT) As Long


Statement:
Declare Function GdiComment Lib "gdi32" Alias "GdiComment" (ByVal hdc As Long, ByVal cbSize As Long, lpData As Byte) As Long


Statement:
Declare Function GetTextMetrics Lib "gdi32" Alias "GetTextMetricsA" (ByVal hdc As Long, lpMetrics As TEXTMETRIC) As Long


Statement:
Declare Function AngleArc Lib "gdi32" Alias "AngleArc" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal dwRadius As Long, ByVal eStartAngle As Double, ByVal eSweepAngle As Double) As Long


Statement:
Declare Function PolyPolyline Lib "gdi32" Alias "PolyPolyline" (ByVal hdc As Long, lppt As POINTAPI, lpdwPolyPoints As Long, ByVal cCount As Long) As Long


Statement:
Declare Function GetWorldTransform Lib "gdi32" Alias "GetWorldTransform" (ByVal hdc As Long, lpXform As xform) As Long


Statement:
Declare Function SetWorldTransform Lib "gdi32" Alias "SetWorldTransform" (ByVal hdc As Long, lpXform As xform) As Long


Statement:
Declare Function ModifyWorldTransform Lib "gdi32" Alias "ModifyWorldTransform" (ByVal hdc As Long, lpXform As xform, ByVal iMode As Long) As Long


Statement:
Declare Function CombineTransform Lib "gdi32" Alias "CombineTransform" (lpxformResult As xform, lpxform1 As xform, lpxform2 As xform) As Long


Statement:
Public Const ILLUMINANT_DEVICE_DEFAULT = 0


Statement:
Public Const ILLUMINANT_MAX_INDEX = ILLUMINANT_F2


Statement:
Public Const ILLUMINANT_TUNGSTEN = ILLUMINANT_A


Statement:
Public Const ILLUMINANT_DAYLIGHT = ILLUMINANT_C


Statement:
Public Const ILLUMINANT_FLUORESCENT = ILLUMINANT_F2


Statement:
Public Const ILLUMINANT_NTSC = ILLUMINANT_C


Statement:
Public Const RGB_GAMMA_MIN = 2500 'words


Statement:
Public Const REFERENCE_WHITE_MIN = 6000 'words


Statement:
Public Const REFERENCE_WHITE_MAX = 10000


Statement:
Public Const COLOR_ADJ_MIN = -100 'shorts


Statement:
Type COLORADJUSTMENT
        caSize As Integer
        caFlags As Integer
        caIlluminantIndex As Integer
        caRedGamma As Integer
        caGreenGamma As Integer
        caBlueGamma As Integer
        caReferenceBlack As Integer
        caReferenceWhite As Integer
        caContrast As Integer
        caBrightness As Integer
        caColorfulness As Integer
        caRedGreenTint As Integer
End Type


Statement:
Declare Function SetColorAdjustment Lib "gdi32" Alias "SetColorAdjustment" (ByVal hdc As Long, lpca As COLORADJUSTMENT) As Long


Statement:
Declare Function GetColorAdjustment Lib "gdi32" Alias "GetColorAdjustment" (ByVal hdc As Long, lpca As COLORADJUSTMENT) As Long


Statement:
Declare Function CreateHalftonePalette Lib "gdi32" Alias "CreateHalftonePalette" (ByVal hdc As Long) As Long


Statement:
Type DOCINFO
        cbSize As Long
        lpszDocName As String
        lpszOutput As String
End Type


Statement:
Declare Function StartDoc Lib "gdi32" Alias "StartDocA" (ByVal hdc As Long, lpdi As DOCINFO) As Long


Statement:
Declare Function StartPage Lib "gdi32" Alias "StartPage" (ByVal hdc As Long) As Long


Statement:
Declare Function EndPage Lib "gdi32" Alias "EndPage" (ByVal hdc As Long) As Long


Statement:
Declare Function EndDoc Lib "gdi32" Alias "EndDoc" (ByVal hdc As Long) As Long


Statement:
Declare Function AbortDoc Lib "gdi32" Alias "AbortDoc" (ByVal hdc As Long) As Long


Statement:
Declare Function AbortPath Lib "gdi32" Alias "AbortPath" (ByVal hdc As Long) As Long


Statement:
Declare Function ArcTo Lib "gdi32" Alias "ArcTo" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long, ByVal X4 As Long, ByVal Y4 As Long) As Long


Statement:
Declare Function BeginPath Lib "gdi32" Alias "BeginPath" (ByVal hdc As Long) As Long


Statement:
Declare Function CloseFigure Lib "gdi32" Alias "CloseFigure" (ByVal hdc As Long) As Long


Statement:
Declare Function EndPath Lib "gdi32" Alias "EndPath" (ByVal hdc As Long) As Long


Statement:
Declare Function FillPath Lib "gdi32" Alias "FillPath" (ByVal hdc As Long) As Long


Statement:
Declare Function FlattenPath Lib "gdi32" Alias "FlattenPath" (ByVal hdc As Long) As Long


Statement:
Declare Function GetPath Lib "gdi32" Alias "GetPath" (ByVal hdc As Long, lpPoint As POINTAPI, lpTypes As Byte, ByVal nSize As Long) As Long


Statement:
Declare Function PathToRegion Lib "gdi32" Alias "PathToRegion" (ByVal hdc As Long) As Long


Statement:
Declare Function PolyDraw Lib "gdi32" Alias "PolyDraw" (ByVal hdc As Long, lppt As POINTAPI, lpbTypes As Byte, ByVal cCount As Long) As Long


Statement:
Declare Function SelectClipPath Lib "gdi32" Alias "SelectClipPath" (ByVal hdc As Long, ByVal iMode As Long) As Long


Statement:
Declare Function SetArcDirection Lib "gdi32" Alias "SetArcDirection" (ByVal hdc As Long, ByVal ArcDirection As Long) As Long


Statement:
Declare Function SetMiterLimit Lib "gdi32" Alias "SetMiterLimit" (ByVal hdc As Long, ByVal eNewLimit As Double, peOldLimit As Double) As Long


Statement:
Declare Function StrokeAndFillPath Lib "gdi32" Alias "StrokeAndFillPath" (ByVal hdc As Long) As Long


Statement:
Declare Function StrokePath Lib "gdi32" Alias "StrokePath" (ByVal hdc As Long) As Long


Statement:
Declare Function WidenPath Lib "gdi32" Alias "WidenPath" (ByVal hdc As Long) As Long


Statement:
Declare Function ExtCreatePen Lib "gdi32" Alias "ExtCreatePen" (ByVal dwPenStyle As Long, ByVal dwWidth As Long, lplb As LOGBRUSH, ByVal dwStyleCount As Long, lpStyle As Long) As Long


Statement:
Declare Function GetMiterLimit Lib "gdi32" Alias "GetMiterLimit" (ByVal hdc As Long, peLimit As Double) As Long


Statement:
Declare Function GetArcDirection Lib "gdi32" Alias "GetArcDirection" (ByVal hdc As Long) As Long


Statement:
Declare Function GetObject Lib "gdi32" Alias "GetObjectA" (ByVal hObject As Long, ByVal nCount As Long, lpObject As Any) As Long


Statement:
Declare Function MoveToEx Lib "gdi32" Alias "MoveToEx" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, lpPoint As POINTAPI) As Long


Statement:
Declare Function TextOut Lib "gdi32" Alias "TextOutA" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal lpString As String, ByVal nCount As Long) As Long


Statement:
Declare Function ExtTextOut Lib "gdi32" Alias "ExtTextOutA" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal wOptions As Long, lpRect As Rect, ByVal lpString As String, ByVal nCount As Long, lpDx As Long) As Long


Statement:
Declare Function PolyTextOut Lib "gdi32" Alias "PolyTextOutA" (ByVal hdc As Long, pptxt As POLYTEXT, cStrings As Long) As Long


Statement:
Declare Function CreatePolygonRgn Lib "gdi32" Alias "CreatePolygonRgn" (lpPoint As POINTAPI, ByVal nCount As Long, ByVal nPolyFillMode As Long) As Long


Statement:
Declare Function DPtoLP Lib "gdi32" Alias "DPtoLP" (ByVal hdc As Long, lpPoint As POINTAPI, ByVal nCount As Long) As Long


Statement:
Declare Function LPtoDP Lib "gdi32" Alias "LPtoDP" (ByVal hdc As Long, lpPoint As POINTAPI, ByVal nCount As Long) As Long


Statement:
Declare Function Polyline Lib "gdi32" Alias "Polyline" (ByVal hdc As Long, lpPoint As POINTAPI, ByVal nCount As Long) As Long


Statement:
Declare Function Polygon Lib "gdi32" Alias "Polygon" (ByVal hdc As Long, lpPoint As POINTAPI, ByVal nCount As Long) As Long


Statement:
Declare Function PolyBezier Lib "gdi32" Alias "PolyBezier" (ByVal hdc As Long, lppt As POINTAPI, ByVal cPoints As Long) As Long


Statement:
Declare Function PolyBezierTo Lib "gdi32" Alias "PolyBezierTo" (ByVal hdc As Long, lppt As POINTAPI, ByVal cCount As Long) As Long


Statement:
Declare Function PolylineTo Lib "gdi32" Alias "PolylineTo" (ByVal hdc As Long, lppt As POINTAPI, ByVal cCount As Long) As Long


Statement:
Declare Function SetViewportExtEx Lib "gdi32" Alias "SetViewportExtEx" (ByVal hdc As Long, ByVal nX As Long, ByVal nY As Long, lpSize As SIZE) As Long


Statement:
Declare Function SetViewportOrgEx Lib "gdi32" Alias "SetViewportOrgEx" (ByVal hdc As Long, ByVal nX As Long, ByVal nY As Long, lpPoint As POINTAPI) As Long


Statement:
Declare Function SetWindowOrgEx Lib "gdi32" Alias "SetWindowOrgEx" (ByVal hdc As Long, ByVal nX As Long, ByVal nY As Long, lpPoint As POINTAPI) As Long


Statement:
Declare Function SetWindowExtEx Lib "gdi32" Alias "SetWindowExtEx" (ByVal hdc As Long, ByVal nX As Long, ByVal nY As Long, lpSize As SIZE) As Long


Statement:
Declare Function OffsetViewportOrgEx Lib "gdi32" Alias "OffsetViewportOrgEx" (ByVal hdc As Long, ByVal nX As Long, ByVal nY As Long, lpPoint As POINTAPI) As Long


Statement:
Declare Function OffsetWindowOrgEx Lib "gdi32" Alias "OffsetWindowOrgEx" (ByVal hdc As Long, ByVal nX As Long, ByVal nY As Long, lpPoint As POINTAPI) As Long


Statement:
Declare Function ScaleWindowExtEx Lib "gdi32" Alias "ScaleWindowExtEx" (ByVal hdc As Long, ByVal nXnum As Long, ByVal nXdenom As Long, ByVal nYnum As Long, ByVal nYdenom As Long, lpSize As SIZE) As Long


Statement:
Declare Function ScaleViewportExtEx Lib "gdi32" Alias "ScaleViewportExtEx" (ByVal hdc As Long, ByVal nXnum As Long, ByVal nXdenom As Long, ByVal nYnum As Long, ByVal nYdenom As Long, lpSize As SIZE) As Long


Statement:
Declare Function SetBitmapDimensionEx Lib "gdi32" Alias "SetBitmapDimensionEx" (ByVal hbm As Long, ByVal nX As Long, ByVal nY As Long, lpSize As SIZE) As Long


Statement:
Declare Function SetBrushOrgEx Lib "gdi32" Alias "SetBrushOrgEx" (ByVal hdc As Long, ByVal nXOrg As Long, ByVal nYOrg As Long, lppt As POINTAPI) As Long


Statement:
Declare Function GetTextFace Lib "gdi32" Alias "GetTextFaceA" (ByVal hdc As Long, ByVal nCount As Long, ByVal lpFacename As String) As Long


Statement:
Type KERNINGPAIR
        wFirst As Integer
        wSecond As Integer
        iKernAmount As Long
End Type


Statement:
Declare Function GetKerningPairs Lib "gdi32" Alias "GetKerningPairsA" (ByVal hdc As Long, ByVal cPairs As Long, lpkrnpair As KERNINGPAIR) As Long


Statement:
Declare Function GetDCOrgEx Lib "gdi32" Alias "GetDCOrgEx" (ByVal hdc As Long, lpPoint As POINTAPI) As Long


Statement:
Declare Function UnrealizeObject Lib "gdi32" Alias "UnrealizeObject" (ByVal hObject As Long) As Long


Statement:
Declare Function GdiFlush Lib "gdi32" Alias "GdiFlush" () As Long


Statement:
Declare Function GdiSetBatchLimit Lib "gdi32" Alias "GdiSetBatchLimit" (ByVal dwLimit As Long) As Long


Statement:
Declare Function GdiGetBatchLimit Lib "gdi32" Alias "GdiGetBatchLimit" () As Long


Statement:
Public Const ENHMETA_SIGNATURE = &H464D4520


Statement:
Public Const ENHMETA_STOCK_OBJECT = &H80000000


Statement:
Public Const EMR_SETCOLORADJUSTMENT = 23


Statement:
Public Const EMR_SCALEVIEWPORTEXTEX = 31


Statement:
Public Const EMR_MODIFYWORLDTRANSFORM = 36


Statement:
Public Const EMR_CREATEBRUSHINDIRECT = 39


Statement:
Public Const EMR_EXTCREATEFONTINDIRECTW = 82


Statement:
Public Const EMR_CREATEDIBPATTERNBRUSHPT = 94


Statement:
Type emr
        iType As Long
        nSize As Long
End Type


Statement:
Type emrtext
        ptlReference As POINTL
        nchars As Long
        offString As Long
        fOptions As Long
        rcl As RECTL
        offDx As Long
End Type


Statement:
Type EMRABORTPATH
        pEmr As emr
End Type


Statement:
Type EMRBEGINPATH
        pEmr As emr
End Type


Statement:
Type EMRENDPATH
        pEmr As emr
End Type


Statement:
Type EMRCLOSEFIGURE
        pEmr As emr
End Type


Statement:
Type EMRFLATTENPATH
        pEmr As emr
End Type


Statement:
Type EMRWIDENPATH
        pEmr As emr
End Type


Statement:
Type EMRSETMETARGN
        pEmr As emr
End Type


Statement:
Type EMREMRSAVEDC
        pEmr As emr
End Type


Statement:
Type EMRREALIZEPALETTE
        pEmr As emr
End Type


Statement:
Type EMRSELECTCLIPPATH
        pEmr As emr
        iMode As Long
End Type


Statement:
Type EMRSETBKMODE
        pEmr As emr
        iMode As Long
End Type


Statement:
Type EMRSETMAPMODE
        pEmr As emr
        iMode As Long
End Type


Statement:
Type EMRSETPOLYFILLMODE
        pEmr As emr
        iMode As Long
End Type


Statement:
Type EMRSETROP2
        pEmr As emr
        iMode As Long
End Type


Statement:
Type EMRSETSTRETCHBLTMODE
        pEmr As emr
        iMode As Long
End Type


Statement:
Type EMRSETTEXTALIGN
        pEmr As emr
        iMode As Long
End Type


Statement:
Type EMRSETMITERLIMIT
        pEmr As emr
        eMiterLimit As Double
End Type


Statement:
Type EMRRESTOREDC
        pEmr As emr
        iRelative As Long
End Type


Statement:
Type EMRSETARCDIRECTION
        pEmr As emr
        iArcDirection As Long
End Type


Statement:
Type EMRSETMAPPERFLAGS
        pEmr As emr
        dwFlags As Long
End Type


Statement:
Type EMRSETTEXTCOLOR
        pEmr As emr
        crColor As Long
End Type


Statement:
Type EMRSETBKCOLOR
        pEmr As emr
        crColor As Long
End Type


Statement:
Type EMRSELECTOBJECT
        pEmr As emr
        ihObject As Long
End Type


Statement:
Type EMRDELETEOBJECT
        pEmr As emr
        ihObject As Long
End Type


Statement:
Type EMRSELECTPALETTE
        pEmr As emr
        ihPal As Long
End Type


Statement:
Type EMRRESIZEPALETTE
        pEmr As emr
        ihPal As Long
        cEntries As Long
End Type


Statement:
Type EMRSETPALETTEENTRIES
        pEmr As emr
        ihPal As Long
        iStart As Long
        cEntries As Long
        aPalEntries(1) As PALETTEENTRY
End Type


Statement:
Type EMRSETCOLORADJUSTMENT
        pEmr As emr
        ColorAdjustment As ColorAdjustment
End Type


Statement:
Type EMRGDICOMMENT
        pEmr As emr
        cbData As Long
        Data(1) As Integer
End Type


Statement:
Type EMREOF
        pEmr As emr
        nPalEntries As Long
        offPalEntries As Long
        nSizeLast As Long
End Type


Statement:
Type EMRLINETO
        pEmr As emr
        ptl As POINTL
End Type


Statement:
Type EMRMOVETOEX
        pEmr As emr
        ptl As POINTL
End Type


Statement:
Type EMROFFSETCLIPRGN
        pEmr As emr
        ptlOffset As POINTL
End Type


Statement:
Type EMRFILLPATH
        pEmr As emr
        rclBounds As RECTL
End Type


Statement:
Type EMRSTROKEANDFILLPATH
        pEmr As emr
        rclBounds As RECTL
End Type


Statement:
Type EMRSTROKEPATH
        pEmr As emr
        rclBounds As RECTL
End Type


Statement:
Type EMREXCLUDECLIPRECT
        pEmr As emr
        rclClip As RECTL
End Type


Statement:
Type EMRINTERSECTCLIPRECT
        pEmr As emr
        rclClip As RECTL
End Type


Statement:
Type EMRSETVIEWPORTORGEX
        pEmr As emr
        ptlOrigin As POINTL
End Type


Statement:
Type EMRSETWINDOWORGEX
        pEmr As emr
        ptlOrigin As POINTL
End Type


Statement:
Type EMRSETBRUSHORGEX
        pEmr As emr
        ptlOrigin As POINTL
End Type


Statement:
Type EMRSETVIEWPORTEXTEX
        pEmr As emr
        szlExtent As SIZEL
End Type


Statement:
Type EMRSETWINDOWEXTEX
        pEmr As emr
        szlExtent As SIZEL
End Type


Statement:
Type EMRSCALEVIEWPORTEXTEX
        pEmr As emr
        xNum As Long
        xDenom As Long
        yNum As Long
        yDemon As Long
End Type


Statement:
Type EMRSCALEWINDOWEXTEX
        pEmr As emr
        xNum As Long
        xDenom As Long
        yNum As Long
        yDemon As Long
End Type


Statement:
Type EMRSETWORLDTRANSFORM
        pEmr As emr
        xform As XFORM
End Type


Statement:
Type EMRMODIFYWORLDTRANSFORM
        pEmr As emr
        xform As XFORM
        iMode As Long
End Type


Statement:
Type EMRSETPIXELV
        pEmr As emr
        ptlPixel As POINTL
        crColor As Long
End Type


Statement:
Type EMREXTFLOODFILL
        pEmr As emr
        ptlStart As POINTL
        crColor As Long
        iMode As Long
End Type


Statement:
Type EMRELLIPSE
        pEmr As emr
        rclBox As RECTL
End Type


Statement:
Type EMRRECTANGLE
        pEmr As emr
        rclBox As RECTL
End Type


Statement:
Type EMRROUNDRECT
        pEmr As emr
        rclBox As RECTL
        szlCorner As SIZEL
End Type


Statement:
Type EMRARC
        pEmr As emr
        rclBox As RECTL
        ptlStart As POINTL
        ptlEnd As POINTL
End Type


Statement:
Type EMRARCTO
        pEmr As emr
        rclBox As RECTL
        ptlStart As POINTL
        ptlEnd As POINTL
End Type


Statement:
Type EMRCHORD
        pEmr As emr
        rclBox As RECTL
        ptlStart As POINTL
        ptlEnd As POINTL
End Type


Statement:
Type EMRPIE
        pEmr As emr
        rclBox As RECTL
        ptlStart As POINTL
        ptlEnd As POINTL
End Type


Statement:
Type EMRANGLEARC
        pEmr As emr
        ptlCenter As POINTL
        nRadius As Long
        eStartAngle As Double
        eSweepAngle As Double
End Type


Statement:
Type EMRPOLYLINE
        pEmr As emr
        rclBounds As RECTL
        cptl As Long
        aptl(1) As POINTL
End Type


Statement:
Type EMRPOLYBEZIER
        pEmr As emr
        rclBounds As RECTL
        cptl As Long
        aptl(1) As POINTL
End Type


Statement:
Type EMRPOLYGON
        pEmr As emr
        rclBounds As RECTL
        cptl As Long
        aptl(1) As POINTL
End Type


Statement:
Type EMRPOLYBEZIERTO
        pEmr As emr
        rclBounds As RECTL
        cptl As Long
        aptl(1) As POINTL
End Type


Statement:
Type EMRPOLYLINE16
        pEmr As emr
        rclBounds As RECTL
        cpts As Long
        apts(1) As POINTS
End Type


Statement:
Type EMRPOLYBEZIER16
        pEmr As emr
        rclBounds As RECTL
        cpts As Long
        apts(1) As POINTS
End Type


Statement:
Type EMRPOLYGON16
        pEmr As emr
        rclBounds As RECTL
        cpts As Long
        apts(1) As POINTS
End Type


Statement:
Type EMRPLOYBEZIERTO16
        pEmr As emr
        rclBounds As RECTL
        cpts As Long
        apts(1) As POINTS
End Type


Statement:
Type EMRPOLYLINETO16
        pEmr As emr
        rclBounds As RECTL
        cpts As Long
        apts(1) As POINTS
End Type


Statement:
Type EMRPOLYDRAW
        pEmr As emr
        rclBounds As RECTL
        cptl As Long
        aptl(1) As POINTL
        abTypes(1) As Integer
End Type


Statement:
Type EMRPOLYDRAW16
        pEmr As emr
        rclBounds As RECTL
        cpts As Long
        apts(1) As POINTS
        abTypes(1) As Integer
End Type


Statement:
Type EMRPOLYPOLYLINE
        pEmr As emr
        rclBounds As RECTL
        nPolys As Long
        cptl As Long
        aPolyCounts(1) As Long
        aptl(1) As POINTL
End Type


Statement:
Type EMRPOLYPOLYGON
        pEmr As emr
        rclBounds As RECTL
        nPolys As Long
        cptl As Long
        aPolyCounts(1) As Long
        aptl(1) As POINTL
End Type


Statement:
Type EMRPOLYPOLYLINE16
        pEmr As emr
        rclBounds As RECTL
        nPolys As Long
        cpts As Long
        aPolyCounts(1) As Long
        apts(1) As POINTS
End Type


Statement:
Type EMRPOLYPOLYGON16
        pEmr As emr
        rclBounds As RECTL
        nPolys As Long
        cpts As Long
        aPolyCounts(1) As Long
        apts(1) As POINTS
End Type


Statement:
Type EMRINVERTRGN
        pEmr As emr
        rclBounds As RECTL
        cbRgnData As Long
        RgnData(1) As Integer
End Type


Statement:
Type EMRPAINTRGN
        pEmr As emr
        rclBounds As RECTL
        cbRgnData As Long
        RgnData(1) As Integer
End Type


Statement:
Type EMRFILLRGN
        pEmr As emr
        rclBounds As RECTL
        cbRgnData As Long
        ihBrush As Long
        RgnData(1) As Integer
End Type


Statement:
Type EMRFRAMERGN
        pEmr As emr
        rclBounds As RECTL
        cbRgnData As Long
        ihBrush As Long
        szlStroke As SIZEL
        RgnData(1) As Integer
End Type


Statement:
Type EMREXTSELECTCLIPRGN
        pEmr As emr
        cbRgnData As Long
        iMode As Long
        RgnData(1) As Integer
End Type


Statement:
Type EMREXTTEXTOUT
        pEmr As emr
        rclBounds As RECTL
        iGraphicsMode As Long
        exScale As Double
        eyScale As Double
        emrtext As emrtext
End Type


Statement:
Type EMRBITBLT
        pEmr As emr
        rclBounds As RECTL
        xDest As Long
        yDest As Long
        cxDest As Long
        cyDest As Long
        dwRop As Long
        xSrc As Long
        ySrc As Long
        xformSrc As xform
        crBkColorSrc As Long
        iUsageSrc As Long
        offBmiSrc As Long
        cbBmiSrc As Long
        offBitsSrc As Long
        cbBitsSrc As Long
End Type


Statement:
Type EMRSTRETCHBLT
        pEmr As emr
        rclBounds As RECTL
        xDest As Long
        yDest As Long
        cxDest As Long
        cyDest As Long
        dwRop As Long
        xSrc As Long
        ySrc As Long
        xformSrc As xform
        crBkColorSrc As Long
        iUsageSrc As Long
        offBmiSrc As Long
        cbBmiSrc As Long
        offBitsSrc As Long
        cbBitsSrc As Long
        cxSrc As Long
        cySrc As Long
End Type


Statement:
Type EMRMASKBLT
        pEmr As emr
        rclBounds As RECTL
        xDest As Long
        yDest As Long
        cxDest As Long
        cyDest As Long
        dwRop As Long
        xSrc2 As Long
        cyDest2 As Long
        dwRop2 As Long
        xSrc As Long
        ySrc As Long
        xformSrc As XFORM
        crBkColorSrc As Long
        iUsageSrc As Long
        offBmiSrc As Long
        cbBmiSrc As Long
        offBitsSrc As Long
        cbBitsSrc As Long
        xMask As Long
        yMask As Long
        iUsageMask As Long
        offBmiMask As Long
        cbBmiMask As Long
        offBitsMask As Long
        cbBitsMask As Long
End Type


Statement:
Type EMRPLGBLT
        pEmr As emr
        rclBounds As RECTL
        aptlDest(3) As POINTL
        xSrc As Long
        ySrc As Long
        cxSrc As Long
        cySrc As Long
        xformSrc As XFORM
        crBkColorSrc As Long
        iUsageSrc As Long
        offBmiSrc As Long
        cbBmiSrc As Long
        offBitsSrc As Long
        cbBitsSrc As Long
        xMask As Long
        yMask As Long
        iUsageMask As Long
        offBmiMask As Long
        cbBmiMask As Long
        offBitsMask As Long
        cbBitsMask As Long
End Type


Statement:
Type EMRSETDIBITSTODEVICE
        pEmr As emr
        rclBounds As RECTL
        xDest As Long
        yDest As Long
        xSrc As Long
        ySrc As Long
        cxSrc As Long
        cySrc As Long
        offBmiSrc As Long
        cbBmiSrc As Long
        offBitsSrc As Long
        cbBitsSrc As Long
        iUsageSrc As Long
        iStartScan As Long
        cScans As Long
End Type


Statement:
Type EMRSTRETCHDIBITS
        pEmr As emr
        rclBounds As RECTL
        xDest As Long
        yDest As Long
        xSrc As Long
        ySrc As Long
        cxSrc As Long
        cySrc As Long
        offBmiSrc As Long
        cbBmiSrc As Long
        offBitsSrc As Long
        cbBitsSrc As Long
        iUsageSrc As Long
        dwRop As Long
        cxDest As Long
        cyDest As Long
End Type


Statement:
Type EMREXTCREATEFONTINDIRECT
        pEmr As emr
        ihFont As Long
        elfw As EXTLOGFONT
End Type


Statement:
Type EMRCREATEPALETTE
        pEmr As emr
        ihPal As Long
        lgpl As LOGPALETTE
End Type


Statement:
Type EMRCREATEPEN
        pEmr As emr
        ihPen As Long
        lopn As LOGPEN
End Type


Statement:
Type EMREXTCREATEPEN
        pEmr As emr
        ihPen As Long
        offBmi As Long
        cbBmi As Long
        offBits As Long
        cbBits As Long
        elp As EXTLOGPEN
End Type


Statement:
Type EMRCREATEBRUSHINDIRECT
        pEmr As emr
        ihBrush As Long
        lb As LOGBRUSH
End Type


Statement:
Type EMRCREATEMONOBRUSH
        pEmr As emr
        ihBrush As Long
        iUsage As Long
        offBmi As Long
        cbBmi As Long
        offBits As Long
        cbBits As Long
End Type


Statement:
Type EMRCREATEDIBPATTERNBRUSHPT
        pEmr As emr
        ihBursh As Long
        iUsage As Long
        offBmi As Long
        cbBmi As Long
        offBits As Long
        cbBits As Long
End Type


Statement:
Type BITMAPV4HEADER
        bV4Size As Long
        bV4Width As Long
        bV4Height As Long
        bV4Planes As Integer
        bV4BitCount As Integer
        bV4V4Compression As Long
        bV4SizeImage As Long
        bV4XPelsPerMeter As Long
        bV4YPelsPerMeter As Long
        bV4ClrUsed As Long
        bV4ClrImportant As Long
        bV4RedMask As Long
        bV4GreenMask As Long
        bV4BlueMask As Long
        bV4AlphaMask As Long
        bV4CSType As Long
        bV4Endpoints As Long
        bV4GammaRed As Long
        bV4GammaGreen As Long
        bV4GammaBlue As Long
End Type


Statement:
Type FONTSIGNATURE
        fsUsb(4) As Long
        fsCsb(2) As Long
End Type


Statement:
Type CHARSETINFO
        ciCharset As Long
        ciACP As Long
        fs As FONTSIGNATURE
End Type


Statement:
Type LOCALESIGNATURE
        lsUsb(4) As Long
        lsCsbDefault(2) As Long
        lsCsbSupported(2) As Long
End Type


Statement:
Type NEWTEXTMETRICEX
        ntmTm As NEWTEXTMETRIC
        ntmFontSig As FONTSIGNATURE
End Type


Statement:
Type ENUMLOGFONTEX
        elfLogFont As LOGFONT
        elfFullName(LF_FULLFACESIZE) As Byte
        elfStyle(LF_FACESIZE) As Byte
        elfScript(LF_FACESIZE) As Byte
End Type


Statement:
Public Const DMPAPER_ISO_B4 = 42                '  B4 (ISO) 250 x 353 mm


Statement:
Public Const DMPAPER_JAPANESE_POSTCARD = 43     '  Japanese Postcard 100 x 148 mm


Statement:
Public Const DMPAPER_9X11 = 44                  '  9 x 11 in


Statement:
Public Const DMPAPER_10X11 = 45                 '  10 x 11 in


Statement:
Public Const DMPAPER_15X11 = 46                 '  15 x 11 in


Statement:
Public Const DMPAPER_ENV_INVITE = 47            '  Envelope Invite 220 x 220 mm


Statement:
Public Const DMPAPER_RESERVED_48 = 48           '  RESERVED--DO NOT USE


Statement:
Public Const DMPAPER_RESERVED_49 = 49           '  RESERVED--DO NOT USE


Statement:
Public Const DMPAPER_LETTER_EXTRA = 50              '  Letter Extra 9 \275 x 12 in


Statement:
Public Const DMPAPER_LEGAL_EXTRA = 51               '  Legal Extra 9 \275 x 15 in


Statement:
Public Const DMPAPER_TABLOID_EXTRA = 52              '  Tabloid Extra 11.69 x 18 in


Statement:
Public Const DMPAPER_A4_EXTRA = 53                   '  A4 Extra 9.27 x 12.69 in


Statement:
Public Const DMPAPER_LETTER_TRANSVERSE = 54     '  Letter Transverse 8 \275 x 11 in


Statement:
Public Const DMPAPER_A4_TRANSVERSE = 55         '  A4 Transverse 210 x 297 mm


Statement:
Public Const DMPAPER_LETTER_EXTRA_TRANSVERSE = 56 '  Letter Extra Transverse 9\275 x 12 in


Statement:
Public Const DMPAPER_A_PLUS = 57                '  SuperA/SuperA/A4 227 x 356 mm


Statement:
Public Const DMPAPER_B_PLUS = 58                '  SuperB/SuperB/A3 305 x 487 mm


Statement:
Public Const DMPAPER_LETTER_PLUS = 59           '  Letter Plus 8.5 x 12.69 in


Statement:
Public Const DMPAPER_A4_PLUS = 60               '  A4 Plus 210 x 330 mm


Statement:
Public Const DMPAPER_A5_TRANSVERSE = 61         '  A5 Transverse 148 x 210 mm


Statement:
Public Const DMPAPER_B5_TRANSVERSE = 62         '  B5 (JIS) Transverse 182 x 257 mm


Statement:
Public Const DMPAPER_A3_EXTRA = 63              '  A3 Extra 322 x 445 mm


Statement:
Public Const DMPAPER_A5_EXTRA = 64              '  A5 Extra 174 x 235 mm


Statement:
Public Const DMPAPER_B5_EXTRA = 65              '  B5 (ISO) Extra 201 x 276 mm


Statement:
Public Const DMPAPER_A2 = 66                    '  A2 420 x 594 mm


Statement:
Public Const DMPAPER_A3_TRANSVERSE = 67         '  A3 Transverse 297 x 420 mm


Statement:
Public Const DMPAPER_A3_EXTRA_TRANSVERSE = 68   '  A3 Extra Transverse 322 x 445 mm


Statement:
Public Const DMTT_DOWNLOAD_OUTLINE = 4 '  download TT fonts as outline soft fonts


Statement:
Public Const DMICMMETHOD_NONE = 1       '  ICM disabled


Statement:
Public Const DMICMMETHOD_SYSTEM = 2     '  ICM handled by system


Statement:
Public Const DMICMMETHOD_DRIVER = 3     '  ICM handled by driver


Statement:
Public Const DMICMMETHOD_DEVICE = 4     '  ICM handled by device


Statement:
Public Const DMICMMETHOD_USER = 256     '  Device-specific methods start here


Statement:
Public Const DMICM_SATURATE = 1         '  Maximize color saturation


Statement:
Public Const DMICM_CONTRAST = 2         '  Maximize color contrast


Statement:
Public Const DMICM_COLORMETRIC = 3      '  Use specific color metric


Statement:
Public Const DMICM_USER = 256           '  Device-specific intents start here


Statement:
Public Const DMMEDIA_STANDARD = 1         '  Standard paper


Statement:
Public Const DMMEDIA_GLOSSY = 2           '  Glossy paper


Statement:
Public Const DMMEDIA_TRANSPARENCY = 3     '  Transparency


Statement:
Public Const DMMEDIA_USER = 256           '  Device-specific media start here


Statement:
Public Const DMDITHER_NONE = 1          '  No dithering


Statement:
Public Const DMDITHER_COARSE = 2        '  Dither with a coarse brush


Statement:
Public Const DMDITHER_FINE = 3          '  Dither with a fine brush


Statement:
Public Const DMDITHER_LINEART = 4       '  LineArt dithering


Statement:
Public Const DMDITHER_GRAYSCALE = 5     '  Device does grayscaling


Statement:
Public Const DMDITHER_USER = 256        '  Device-specific dithers start here


Statement:
Public Const GCP_NUMERICOVERRIDE = &H1000000


Statement:
Public Const GCP_NEUTRALOVERRIDE = &H2000000


Statement:
Public Const GCP_NUMERICSLATIN = &H4000000


Statement:
Public Const GCP_NUMERICSLOCAL = &H8000000


Statement:
Public Const GCPCLASS_LATINNUMERICTERMINATOR = 6


Statement:
Public Const GCPCLASS_LATINNUMERICSEPARATOR = 7


Statement:
Public Const GCPCLASS_NUMERICSEPARATOR = 8


Statement:
Public Const GCPCLASS_PREBOUNDRTL = &H80


Statement:
Public Const GCPCLASS_PREBOUNDLTR = &H40


Statement:
Type GCP_RESULTS
        lStructSize As Long
        lpOutString As String
        lpOrder As Long
        lpDX As Long
        lpCaretPos As Long
        lpClass As String
        lpGlyphs As String
        nGlyphs As Long
        nMaxFit As Long
End Type


Statement:
Public Const DCTT_DOWNLOAD_OUTLINE = &H8&


Statement:
Public Const DCBA_FACEDOWNCENTER = &H101


Statement:
Declare Function EnumFontFamilies Lib "gdi32" Alias "EnumFontFamiliesA" (ByVal hdc As Long, ByVal lpszFamily As String, ByVal lpEnumFontFamProc As Long, ByVal lParam As Long) As Long


Statement:
Declare Function EnumFontFamiliesEx Lib "gdi32" Alias "EnumFontFamiliesExA" (ByVal hdc As Long, lpLogFont As LOGFONT, ByVal lpEnumFontProc As Long, ByVal lParam As Long, ByVal dw As Long) As Long


Statement:
Declare Function GetTextCharset Lib "gdi32" Alias "GetTextCharset" (ByVal hdc As Long) As Long


Statement:
Declare Function GetTextCharsetInfo Lib "gdi32" Alias "GetTextCharsetInfo" (ByVal hdc As Long, lpSig As FONTSIGNATURE, ByVal dwFlags As Long) As Long


Statement:
Declare Function TranslateCharsetInfo Lib "gdi32" Alias "TranslateCharsetInfo" (lpSrc As Long, lpcs As CHARSETINFO, ByVal dwFlags As Long) As Long


Statement:
Declare Function GetFontLanguageInfo Lib "gdi32" Alias "GetFontLanguageInfo" (ByVal hdc As Long) As Long


Statement:
Declare Function GetCharacterPlacement Lib "gdi32" Alias " GetCharacterPlacementA" (ByVal hdc As Long, ByVal lpsz As String, ByVal n1 As Long, ByVal n2 As Long, lpGcpResults As GCP_RESULTS, ByVal dw As Long) As Long


Statement:
Type CIEXYZ
	ciexyzX As Long
	ciexyzY As Long
	ciexyzZ As Long
End Type


Statement:
Type CIEXYZTRIPLE
    ciexyzRed As CIEXYZ
    ciexyzGreen As CIEXYZ
    ciexyBlue As CIEXYZ
End Type


Statement:
Type LOGCOLORSPACE
    lcsSignature As Long
    lcsVersion As Long
    lcsSize As Long
    lcsCSType As Long
    lcsIntent As Long
    lcsEndPoints As CIEXYZTRIPLE
    lcsGammaRed As Long
    lcsGammaGreen As Long
    lcsGammaBlue As Long
    lcsFileName As String * MAX_PATH
End Type


Statement:
Declare Function SetICMMode Lib "gdi32" Alias "SetICMMode" (ByVal hdc As Long, ByVal n As Long) As Long


Statement:
Declare Function CheckColorsInGamut Lib "gdi32" Alias "CheckColorsInGamut" (ByVal hdc As Long, lpv As Any, lpv2 As Any, ByVal dw As Long) As Long


Statement:
Declare Function GetLogColorSpace Lib "gdi32" Alias "GetLogColorSpaceA" (ByVal hcolorspace As Long, ByVal lplogcolorspace As LOGCOLORSPACE, ByVal dw As Long) As Long


Statement:
Declare Function GetColorSpace Lib "gdi32" Alias "GetColorSpace" (ByVal hdc As Long) As Long


Statement:
Declare Function CreateColorSpace Lib "gdi32" Alias "CreateColorSpaceA" (lplogcolorspace As LOGCOLORSPACE) As Long


Statement:
Declare Function SetColorSpace Lib "gdi32" Alias "SetColorSpace" (ByVal hdc As Long, ByVal hcolorspace As Long) As Long


Statement:
Declare Function DeleteColorSpace Lib "gdi32" Alias "DeleteColorSpace" (ByVal hcolorspace As Long) As Long


Statement:
Declare Function GetICMProfile Lib "gdi32" Alias "GetICMProfileA" (ByVal hdc As Long, ByVal dw As Long, ByVal lpStr As String) As Long


Statement:
Declare Function SetICMProfile Lib "gdi32" Alias "SetICMProfileA" (ByVal hdc As Long, ByVal lpStr As String) As Long


Statement:
Declare Function GetDeviceGammaRamp Lib "gdi32" Alias "GetDeviceGammaRamp" (ByVal hdc As Long, lpv As Any) As Long


Statement:
Declare Function SetDeviceGammaRamp Lib "gdi32" Alias "SetDeviceGammaRamp" (ByVal hdc As Long, lpv As Any) As Long


Statement:
Declare Function ColorMatchToTarget Lib "gdi32" Alias "ColorMatchToTarget" (ByVal hdc As Long, ByVal hdc2 As Long, ByVal dw As Long) As Long


Statement:
Declare Function EnumICMProfiles Lib "gdi32" Alias "EnumICMProfilesA" (ByVal hdc As Long, ByVal icmEnumProc As Long, ByVal lParam As Long) As Long


Statement:
Type EMRSELECTCOLORSPACE
        pEmr As emr
        ihCS As Long               '  ColorSpace handle index
End Type


Statement:
Type EMRCREATECOLORSPACE
        pEmr As emr
        ihCS As Long        '  ColorSpace handle index
        lcs As LOGCOLORSPACE
End Type


Statement:
Public Const VK_MBUTTON = &H4             '  NOT contiguous with L RBUTTON


Statement:
Type CBTACTIVATESTRUCT
        fMouse As Boolean
        hWndActive As Long
End Type


Statement:
Public Const HSHELL_ACTIVATESHELLWINDOW = 3


Statement:
Type EVENTMSG
        message As Long
        paramL As Long
        paramH As Long
        time As Long
        hwnd As Long
End Type


Statement:
Type CWPSTRUCT
        lParam As Long
        wParam As Long
        message As Long
        hwnd As Long
End Type


Statement:
Type DEBUGHOOKINFO
        hModuleHook As Long
        Reserved As Long
        lParam As Long
        wParam As Long
        code As Long
End Type


Statement:
Type MOUSEHOOKSTRUCT
        pt As POINTAPI
        hwnd As Long
        wHitTestCode As Long
        dwExtraInfo As Long
End Type


Statement:
Declare Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, ByVal flags As Long) As Long


Statement:
Declare Function ActivateKeyboardLayout Lib "user32" Alias "ActivateKeyboardLayout" (ByVal HKL As Long, ByVal flags As Long) As Long


Statement:
Declare Function UnloadKeyboardLayout Lib "user32" Alias "UnloadKeyboardLayout" (ByVal HKL As Long) As Long


Statement:
Declare Function GetKeyboardLayoutName Lib "user32" Alias "GetKeyboardLayoutNameA" (ByVal pwszKLID As String) As Long


Statement:
Public Const DESKTOP_CREATEWINDOW = &H2&


Statement:
Public Const DESKTOP_JOURNALRECORD = &H10&


Statement:
Public Const DESKTOP_JOURNALPLAYBACK = &H20&


Statement:
Public Const DESKTOP_WRITEOBJECTS = &H80&


Statement:
Declare Function GetThreadDesktop Lib "user32" Alias "GetThreadDesktop" (ByVal dwThread As Long) As Long


Statement:
Public Const WINSTA_READATTRIBUTES = &H2&


Statement:
Public Const WINSTA_ACCESSCLIPBOARD = &H4&


Statement:
Public Const WINSTA_CREATEDESKTOP = &H8&


Statement:
Public Const WINSTA_WRITEATTRIBUTES = &H10&


Statement:
Public Const WINSTA_ACCESSPUBLICATOMS = &H20&


Statement:
Declare Function GetProcessWindowStation Lib "user32" Alias "GetProcessWindowStation" () As Long


Statement:
Declare Function SetUserObjectSecurity Lib "user32" Alias "SetUserObjectSecurity" (ByVal hObj As Long, pSIRequested As Long, pSd As SECURITY_DESCRIPTOR) As Long


Statement:
Declare Function GetUserObjectSecurity Lib "user32" Alias "GetUserObjectSecurity" (ByVal hObj As Long, pSIRequested As Long, pSd As SECURITY_DESCRIPTOR, ByVal nLength As Long, lpnLengthNeeded As Long) As Long


Statement:
Type MINMAXINFO
        ptReserved As POINTAPI
        ptMaxSize As POINTAPI
        ptMaxPosition As POINTAPI
        ptMinTrackSize As POINTAPI
        ptMaxTrackSize As POINTAPI
End Type


Statement:
Public Const WM_OTHERWINDOWCREATED = &H42               '  no longer suported


Statement:
Public Const WM_OTHERWINDOWDESTROYED = &H43             '  no longer suported


Statement:
Public Const WM_COMMNOTIFY = &H44                       '  no longer suported


Statement:
Public Const WM_WINDOWPOSCHANGING = &H46


Statement:
Type COPYDATASTRUCT
        dwData As Long
        cbData As Long
        lpData As Long
End Type


Statement:
Public Const WM_CTLCOLORSCROLLBAR = &H137


Statement:
Public Const WM_RENDERALLFORMATS = &H306


Statement:
Public Const WM_DESTROYCLIPBOARD = &H307


Statement:
Public Const WM_VSCROLLCLIPBOARD = &H30A


Statement:
Public Const WM_HSCROLLCLIPBOARD = &H30E


Statement:
Public Const WM_PALETTEISCHANGING = &H310


Statement:
Declare Function RegisterWindowMessage Lib "user32" Alias "RegisterWindowMessageA" (ByVal lpString As String) As Long


Statement:
Public Const SIZEICONIC = SIZE_MINIMIZED


Statement:
Public Const SIZEFULLSCREEN = SIZE_MAXIMIZED


Statement:
Public Const SIZEZOOMSHOW = SIZE_MAXSHOW


Statement:
Public Const SIZEZOOMHIDE = SIZE_MAXHIDE


Statement:
Type WINDOWPOS
        hwnd As Long
        hWndInsertAfter As Long
        x As Long
        y As Long
        cx As Long
        cy As Long
        flags As Long
End Type


Statement:
Public Const WVR_REDRAW = (WVR_HREDRAW Or WVR_VREDRAW)


Statement:
Public Const WS_CLIPSIBLINGS = &H4000000


Statement:
Public Const WS_CLIPCHILDREN = &H2000000


Statement:
Public Const WS_CAPTION = &HC00000                  '  WS_BORDER Or WS_DLGFRAME


Statement:
Public Const WS_OVERLAPPEDWINDOW = (WS_OVERLAPPED Or WS_CAPTION Or WS_SYSMENU Or WS_THICKFRAME Or WS_MINIMIZEBOX Or WS_MAXIMIZEBOX)


Statement:
Public Const WS_TILEDWINDOW = WS_OVERLAPPEDWINDOW


Statement:
Public Const WS_POPUPWINDOW = (WS_POPUP Or WS_BORDER Or WS_SYSMENU)


Statement:
Public Const WS_CHILDWINDOW = (WS_CHILD)


Statement:
Public Const WS_EX_NOPARENTNOTIFY = &H4&


Statement:
Public Const CS_BYTEALIGNCLIENT = &H1000


Statement:
Public Const CS_BYTEALIGNWINDOW = &H2000


Statement:
Public Const FVIRTKEY = True          '  Assumed to be == TRUE


Statement:
Type ACCEL
        fVirt As Byte
        key As Integer
        cmd As Integer
End Type


Statement:
Type PAINTSTRUCT
        hdc As Long
        fErase As Boolean
        rcPaint As Rect
        fRestore As Boolean
        fIncUpdate As Boolean
        rgbReserved As Byte
End Type


Statement:
Type CREATESTRUCT
        lpCreateParams As Long
        hInstance As Long
        hMenu As Long
        hWndParent As Long
        cy As Long
        cx As Long
        y As Long
        x As Long
        style As Long
        lpszName As String
        lpszClass As String
        ExStyle As Long
End Type


Statement:
Type CBT_CREATEWND
        lpcs As CREATESTRUCT
        hWndInsertAfter As Long
End Type


Statement:
Type WINDOWPLACEMENT
        Length As Long
        flags As Long
        showCmd As Long
        ptMinPosition As POINTAPI
        ptMaxPosition As POINTAPI
        rcNormalPosition As Rect
End Type


Statement:
Public Const WPF_RESTORETOMAXIMIZED = &H2


Statement:
Type MEASUREITEMSTRUCT
        CtlType As Long
        CtlID As Long
        itemID As Long
        itemWidth As Long
        itemHeight As Long
        itemData As Long
End Type


Statement:
Type DRAWITEMSTRUCT
        CtlType As Long
        CtlID As Long
        itemID As Long
        itemAction As Long
        itemState As Long
        hwndItem As Long
        hdc As Long
        rcItem As Rect
        itemData As Long
End Type


Statement:
Type DELETEITEMSTRUCT
        CtlType As Long
        CtlID As Long
        itemID As Long
        hwndItem As Long
        itemData As Long
End Type


Statement:
Type COMPAREITEMSTRUCT
        CtlType As Long
        CtlID As Long
        hwndItem As Long
        itemID1 As Long
        itemData1 As Long
        itemID2 As Long
        itemData2 As Long
End Type


Statement:
Declare Function GetMessage Lib "user32" Alias "GetMessageA" (lpMsg As MSG, ByVal hwnd As Long, ByVal wMsgFilterMin As Long, ByVal wMsgFilterMax As Long) As Long


Statement:
Declare Function TranslateMessage Lib "user32" Alias "TranslateMessage" (lpMsg As MSG) As Long


Statement:
Declare Function DispatchMessage Lib "user32" Alias "DispatchMessageA" (lpMsg As MSG) As Long


Statement:
Declare Function PeekMessage Lib "user32" Alias "PeekMessageA" (lpMsg As MSG, ByVal hwnd As Long, ByVal wMsgFilterMin As Long, ByVal wMsgFilterMax As Long, ByVal wRemoveMsg As Long) As Long


Statement:
Declare Function RegisterHotKey Lib "user32" Alias "RegisterHotKey" (ByVal hwnd As Long, ByVal id As Long, ByVal fsModifiers As Long, ByVal vk As Long) As Long


Statement:
Declare Function UnregisterHotKey Lib "user32" Alias "UnregisterHotKey" (ByVal hwnd As Long, ByVal id As Long) As Long


Statement:
Public Const IDHOT_SNAPWINDOW = (-1)    '  SHIFT-PRINTSCRN


Statement:
Public Const IDHOT_SNAPDESKTOP = (-2)    '  PRINTSCRN


Statement:
Public Const READAPI = 0        '  Flags for _lopen


Statement:
Declare Function ExitWindows Lib "user32" Alias "ExitWindows" (ByVal dwReserved As Long, ByVal uReturnCode As Long) As Long


Statement:
Declare Function ExitWindowsEx Lib "user32" Alias "ExitWindowsEx" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long


Statement:
Declare Function SwapMouseButton Lib "user32" Alias "SwapMouseButton" (ByVal bSwap As Long) As Long


Statement:
Declare Function GetMessagePos Lib "user32" Alias "GetMessagePos" () As Long


Statement:
Declare Function GetMessageTime Lib "user32" Alias "GetMessageTime" () As Long


Statement:
Declare Function GetMessageExtraInfo Lib "user32" Alias "GetMessageExtraInfo" () As Long


Statement:
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Long) As Long


Statement:
Declare Function SendMessageTimeout Lib "user32" Alias "SendMessageTimeoutA" (ByVal hwnd As Long, ByVal msg As Long, ByVal wParam As Long, ByVal lParam As Long, ByVal fuFlags As Long, ByVal uTimeout As Long, lpdwResult As Long) As Long


Statement:
Declare Function SendNotifyMessage Lib "user32" Alias "SendNotifyMessageA" (ByVal hwnd As Long, ByVal msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long


Statement:
Declare Function SendMessageCallback Lib "user32" Alias "SendMessageCallbackA" (ByVal hwnd As Long, ByVal msg As Long, ByVal wParam As Long, ByVal lParam As Long, ByVal lpResultCallBack As Long, ByVal dwData As Long) As Long


Statement:
Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long


Statement:
Declare Function PostThreadMessage Lib "user32" Alias "PostThreadMessageA" (ByVal idThread As Long, ByVal msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long


Statement:
Type WNDCLASS
    style As Long
    lpfnwndproc As Long
    cbClsextra As Long
    cbWndExtra2 As Long
    hInstance As Long
    hIcon As Long
    hCursor As Long
    hbrBackground As Long
    lpszMenuName As String
    lpszClassName As String
End Type


Statement:
Declare Function AttachThreadInput Lib "user32" Alias "AttachThreadInput" (ByVal idAttach As Long, ByVal idAttachTo As Long, ByVal fAttach As Long) As Long


Statement:
Declare Function ReplyMessage Lib "user32" Alias "ReplyMessage" (ByVal lReply As Long) As Long


Statement:
Declare Function WaitMessage Lib "user32" Alias "WaitMessage" () As Long


Statement:
Declare Function WaitForInputIdle Lib "user32" Alias "WaitForInputIdle" (ByVal hProcess As Long, ByVal dwMilliseconds As Long) As Long


Statement:
Declare Function DefWindowProc Lib "user32" Alias "DefWindowProcA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long


Statement:
Declare Sub PostQuitMessage Lib "user32" Alias "PostQuitMessage" (ByVal nExitCode As Long)


Statement:
Declare Function InSendMessage Lib "user32" Alias "InSendMessage" () As Long


Statement:
Declare Function GetDoubleClickTime Lib "user32" Alias "GetDoubleClickTime" () As Long


Statement:
Declare Function SetDoubleClickTime Lib "user32" Alias "SetDoubleClickTime" (ByVal wCount As Long) As Long


Statement:
Declare Function RegisterClass Lib "user32" Alias "RegisterClass" (Class As WNDCLASS) As Long


Statement:
Declare Function UnregisterClass Lib "user32" Alias "UnregisterClassA" (ByVal lpClassName As String, ByVal hInstance As Long) As Long


Statement:
Declare Function GetClassInfo Lib "user32" Alias "GetClassInfoA" (ByVal hInstance As Long, ByVal lpClassName As String, lpWndClass As WNDCLASS) As Long


Statement:
Declare Function CreateWindow Lib "user32" Alias "CreateWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String, ByVal dwStyle As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hWndParent As Long, ByVal hMenu As Long, ByVal hInstance As Long, lpParam As Any) As Long


Statement:
Declare Function CreateWindowEx Lib "user32" Alias "CreateWindowEx" (ByVal dwExStyle As Long, ByVal lpClassName As String, ByVal lpWindowName As String, ByVal dwStyle As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hWndParent As Long, ByVal hMenu As Long, ByVal hInstance As Long, lpParam As Any) As Long


Statement:
Declare Function IsWindow Lib "user32" Alias "IsWindow" (ByVal hwnd As Long) As Long


Statement:
Declare Function IsMenu Lib "user32" Alias "IsMenu" (ByVal hMenu As Long) As Long


Statement:
Declare Function IsChild Lib "user32" Alias "IsChild" (ByVal hWndParent As Long, ByVal hwnd As Long) As Long


Statement:
Declare Function DestroyWindow Lib "user32" Alias "DestroyWindow" (ByVal hwnd As Long) As Long


Statement:
Declare Function ShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long


Statement:
Declare Function FlashWindow Lib "user32" Alias "FlashWindow" (ByVal hwnd As Long, ByVal bInvert As Long) As Long


Statement:
Declare Function ShowOwnedPopups Lib "user32" Alias "ShowOwnedPopups" (ByVal hwnd As Long, ByVal fShow As Long) As Long


Statement:
Declare Function OpenIcon Lib "user32" Alias "OpenIcon" (ByVal hwnd As Long) As Long


Statement:
Declare Function CloseWindow Lib "user32" Alias "CloseWindow" (ByVal hwnd As Long) As Long


Statement:
Declare Function MoveWindow Lib "user32" Alias "MoveWindow" (ByVal hwnd As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal bRepaint As Long) As Long


Statement:
Declare Function SetWindowPos Lib "user32" Alias "SetWindowPos" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long


Statement:
Declare Function GetWindowPlacement Lib "user32" Alias "GetWindowPlacement" (ByVal hwnd As Long, lpwndpl As WINDOWPLACEMENT) As Long


Statement:
Declare Function SetWindowPlacement Lib "user32" Alias "SetWindowPlacement" (ByVal hwnd As Long, lpwndpl As WINDOWPLACEMENT) As Long


Statement:
Declare Function BeginDeferWindowPos Lib "user32" Alias "BeginDeferWindowPos" (ByVal nNumWindows As Long) As Long


Statement:
Declare Function DeferWindowPos Lib "user32" Alias "DeferWindowPos" (ByVal hWinPosInfo As Long, ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long


Statement:
Declare Function EndDeferWindowPos Lib "user32" Alias "EndDeferWindowPos" (ByVal hWinPosInfo As Long) As Long


Statement:
Declare Function IsWindowVisible Lib "user32" Alias "IsWindowVisible" (ByVal hwnd As Long) As Long


Statement:
Declare Function IsIconic Lib "user32" Alias "IsIconic" (ByVal hwnd As Long) As Long


Statement:
Declare Function AnyPopup Lib "user32" Alias "AnyPopup" () As Long


Statement:
Declare Function BringWindowToTop Lib "user32" Alias "BringWindowToTop" (ByVal hwnd As Long) As Long


Statement:
Declare Function IsZoomed Lib "user32" Alias "IsZoomed" (ByVal hwnd As Long) As Long


Statement:
Public Const SWP_FRAMECHANGED = &H20        '  The frame changed: send WM_NCCALCSIZE


Statement:
Public Const SWP_NOOWNERZORDER = &H200      '  Don't do owner Z ordering


Statement:
Public Const SWP_DRAWFRAME = SWP_FRAMECHANGED


Statement:
Public Const SWP_NOREPOSITION = SWP_NOOWNERZORDER


Statement:
Type DLGTEMPLATE
        style As Long
        dwExtendedStyle As Long
        cdit As Integer
        x As Integer
        y As Integer
        cx As Integer
        cy As Integer
End Type


Statement:
Type DLGITEMTEMPLATE
        style As Long
        dwExtendedStyle As Long
        x As Integer
        y As Integer
        cx As Integer
        cy As Integer
        id As Integer
End Type


Statement:
Declare Function EndDialog Lib "user32" Alias "EndDialog" (ByVal hDlg As Long, ByVal nResult As Long) As Long


Statement:
Declare Function GetDlgItem Lib "user32" Alias "GetDlgItem" (ByVal hDlg As Long, ByVal nIDDlgItem As Long) As Long


Statement:
Declare Function SetDlgItemInt Lib "user32" Alias "SetDlgItemInt" (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal wValue As Long, ByVal bSigned As Long) As Long


Statement:
Declare Function GetDlgItemInt Lib "user32" Alias "GetDlgItemInt" (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal lpTranslated As Long, ByVal bSigned As Long) As Long


Statement:
Declare Function SetDlgItemText Lib "user32" Alias "SetDlgItemTextA" (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal lpString As String) As Long


Statement:
Declare Function GetDlgItemText Lib "user32" Alias "GetDlgItemTextA" (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal lpString As String, ByVal nMaxCount As Long) As Long


Statement:
Declare Function CheckDlgButton Lib "user32" Alias "CheckDLGButtonA" (ByVal hDlg As Long, ByVal nIDButton As Long, ByVal wCheck As Long) As Long


Statement:
Declare Function CheckRadioButton Lib "user32" Alias "CheckRadioButtonA" (ByVal hDlg As Long, ByVal nIDFirstButton As Long, ByVal nIDLastButton As Long, ByVal nIDCheckButton As Long) As Long


Statement:
Declare Function IsDlgButtonChecked Lib "user32" Alias "IsDlgButtonChecked" (ByVal hDlg As Long, ByVal nIDButton As Long) As Long


Statement:
Declare Function SendDlgItemMessage Lib "user32" Alias "SendDlgItemMessageA" (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long


Statement:
Declare Function GetNextDlgGroupItem Lib "user32" Alias "GetNextDlgGroupItem" (ByVal hDlg As Long, ByVal hCtl As Long, ByVal bPrevious As Long) As Long


Statement:
Declare Function GetNextDlgTabItem Lib "user32" Alias "GetNextDlgTabItem" (ByVal hDlg As Long, ByVal hCtl As Long, ByVal bPrevious As Long) As Long


Statement:
Declare Function GetDlgCtrlID Lib "user32" Alias "GetDlgCtrlID" (ByVal hwnd As Long) As Long


Statement:
Declare Function GetDialogBaseUnits Lib "user32" Alias "GetDialogBaseUnits" () As Long


Statement:
Declare Function DefDlgProc Lib "user32" Alias "DefDlgProcA" (ByVal hDlg As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long


Statement:
Public Const DLGWINDOWEXTRA = 30        '  Window extra bytes needed for private dialog classes


Statement:
Declare Function CallMsgFilter Lib "user32" Alias "CallMsgFilterA" (lpMsg As MSG, ByVal ncode As Long) As Long


Statement:
Declare Function OpenClipboard Lib "user32" Alias "OpenClipboard" (ByVal hwnd As Long) As Long


Statement:
Declare Function CloseClipboard Lib "user32" Alias "CloseClipboard" () As Long


Statement:
Declare Function GetClipboardOwner Lib "user32" Alias "GetClipboardOwner" () As Long


Statement:
Declare Function SetClipboardViewer Lib "user32" Alias "SetClipboardViewer" (ByVal hwnd As Long) As Long


Statement:
Declare Function GetClipboardViewer Lib "user32" Alias "GetClipboardViewer" () As Long


Statement:
Declare Function ChangeClipboardChain Lib "user32" Alias "ChangeClipboardChain" (ByVal hwnd As Long, ByVal hWndNext As Long) As Long


Statement:
Declare Function SetClipboardData Lib "user32" Alias "SetClipboardDataA" (ByVal wFormat As Long, ByVal hMem As Long) As Long


Statement:
Declare Function GetClipboardData Lib "user32" Alias "GetClipboardDataA" (ByVal wFormat As Long) As Long


Statement:
Declare Function RegisterClipboardFormat Lib "user32" Alias "RegisterClipboardFormatA" (ByVal lpString As String) As Long


Statement:
Declare Function CountClipboardFormats Lib "user32" Alias "CountClipboardFormats" () As Long


Statement:
Declare Function EnumClipboardFormats Lib "user32" Alias "EnumClipboardFormats" (ByVal wFormat As Long) As Long


Statement:
Declare Function GetClipboardFormatName Lib "user32" Alias "GetClipboardFormatNameA" (ByVal wFormat As Long, ByVal lpString As String, ByVal nMaxCount As Long) As Long


Statement:
Declare Function EmptyClipboard Lib "user32" Alias "EmptyClipboard" () As Long


Statement:
Declare Function IsClipboardFormatAvailable Lib "user32" Alias "IsClipboardFormatAvailable" (ByVal wFormat As Long) As Long


Statement:
Declare Function GetPriorityClipboardFormat Lib "user32" Alias "GetPriorityClipboardFormat" (lpPriorityList As Long, ByVal nCount As Long) As Long


Statement:
Declare Function GetOpenClipboardWindow Lib "user32" Alias "GetOpenClipboardWindow" () As Long


Statement:
Declare Function CharToOem Lib "user32" Alias "CharToOemA" (ByVal lpszSrc As String, ByVal lpszDst As String) As Long


Statement:
Declare Function OemToChar Lib "user32" Alias "OemToCharA" (ByVal lpszSrc As String, ByVal lpszDst As String) As Long


Statement:
Declare Function CharToOemBuff Lib "user32" Alias "CharToOemBuffA" (ByVal lpszSrc As String, ByVal lpszDst As String, ByVal cchDstLength As Long) As Long


Statement:
Declare Function OemToCharBuff Lib "user32" Alias "OemToCharBuffA" (ByVal lpszSrc As String, ByVal lpszDst As String, ByVal cchDstLength As Long) As Long


Statement:
Declare Function CharUpper Lib "user32" Alias "CharUpperA" (ByVal lpsz As String) As String


Statement:
Declare Function CharUpperBuff Lib "user32" Alias "CharUpperBuffA" (ByVal lpsz As String, ByVal cchLength As Long) As Long


Statement:
Declare Function CharLower Lib "user32" Alias "CharLowerA" (ByVal lpsz As String) As String


Statement:
Declare Function CharLowerBuff Lib "user32" Alias "CharLowerBuffA" (ByVal lpsz As String, ByVal cchLength As Long) As Long


Statement:
Declare Function CharNext Lib "user32" Alias "CharNextA" (ByVal lpsz As String) As String


Statement:
Declare Function CharPrev Lib "user32" Alias "CharPrevA" (ByVal lpszStart As String, ByVal lpszCurrent As String) As String


Statement:
Declare Function IsCharAlpha Lib "user32" Alias "IsCharAlphaA" (ByVal cChar As Byte) As Long


Statement:
Declare Function IsCharAlphaNumeric Lib "user32" Alias "IsCharAlphaNumericA" (ByVal cChar As Byte) As Long


Statement:
Declare Function IsCharUpper Lib "user32" Alias "IsCharUpperA" (ByVal cChar As Byte) As Long


Statement:
Declare Function IsCharLower Lib "user32" Alias "IsCharLowerA" (ByVal cChar As Byte) As Long


Statement:
Declare Function SetFocus Lib "user32" Alias "SetFocus" (ByVal hwnd As Long) As Long


Statement:
Declare Function GetFocus Lib "user32" Alias "GetFocus" () As Long


Statement:
Declare Function GetActiveWindow Lib "user32" Alias "GetActiveWindow" () As Long


Statement:
Declare Function GetKBCodePage Lib "user32" Alias "GetKBCodePage" () As Long


Statement:
Declare Function GetKeyState Lib "user32" Alias "GetKeyState" (ByVal nVirtKey As Long) As Integer


Statement:
Declare Function GetAsyncKeyState Lib "user32" Alias "GetAsyncKeyState" (ByVal vKey As Long) As Integer


Statement:
Declare Function GetKeyboardState Lib "user32" Alias "GetKeyboardState" (pbKeyState As Byte) As Long


Statement:
Declare Function SetKeyboardState Lib "user32" Alias "SetKeyboardState" (lppbKeyState As Byte) As Long


Statement:
Declare Function GetKeyboardType Lib "user32" Alias "GetKeyboardType" (ByVal nTypeFlag As Long) As Long


Statement:
Declare Function GetKeyNameText Lib "user32" Alias "GetKeyNameTextA" (ByVal lParam As Long, ByVal lpBuffer As String, ByVal nSize As Long) As Long


Statement:
Declare Function ToAscii Lib "user32" Alias "ToAscii" (ByVal uVirtKey As Long, ByVal uScanCode As Long, lpbKeyState As Byte, lpwTransKey As Long, ByVal fuState As Long) As Long


Statement:
Declare Function ToUnicode Lib "user32" Alias "ToUnicode" (ByVal wVirtKey As Long, ByVal wScanCode As Long, lpKeyState As Byte, ByVal pwszBuff As String, ByVal cchBuff As Long, ByVal wFlags As Long) As Long


Statement:
Declare Function OemKeyScan Lib "user32" Alias "OemKeyScan" (ByVal wOemChar As Long) As Long


Statement:
Declare Function VkKeyScan Lib "user32" Alias "VkKeyScanA" (ByVal cChar As Byte) As Integer


Statement:
Public Const KEYEVENTF_EXTENDEDKEY = &H1


Statement:
Declare Sub keybd_event Lib "user32" Alias "keybd_event" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)


Statement:
Public Const MOUSEEVENTF_MOVE = &H1 '  mouse move


Statement:
Public Const MOUSEEVENTF_LEFTDOWN = &H2 '  left button down


Statement:
Public Const MOUSEEVENTF_LEFTUP = &H4 '  left button up


Statement:
Public Const MOUSEEVENTF_RIGHTDOWN = &H8 '  right button down


Statement:
Public Const MOUSEEVENTF_RIGHTUP = &H10 '  right button up


Statement:
Public Const MOUSEEVENTF_MIDDLEDOWN = &H20 '  middle button down


Statement:
Public Const MOUSEEVENTF_MIDDLEUP = &H40 '  middle button up


Statement:
Public Const MOUSEEVENTF_ABSOLUTE = &H8000 '  absolute move


Statement:
Declare Sub mouse_event Lib "user32" Alias "mouse_event" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)


Statement:
Declare Function MapVirtualKey Lib "user32" Alias "MapVirtualKeyA" (ByVal wCode As Long, ByVal wMapType As Long) As Long


Statement:
Declare Function GetInputState Lib "user32" Alias "GetInputState" () As Long


Statement:
Declare Function GetQueueStatus Lib "user32" Alias "GetQueueStatus" (ByVal fuFlags As Long) As Long


Statement:
Declare Function GetCapture Lib "user32" Alias "GetCapture" () As Long


Statement:
Declare Function SetCapture Lib "user32" Alias "SetCapture" (ByVal hwnd As Long) As Long


Statement:
Declare Function ReleaseCapture Lib "user32" Alias "ReleaseCapture" () As Long


Statement:
Declare Function MsgWaitForMultipleObjects Lib "user32" Alias "MsgWaitForMultipleObjects" (ByVal nCount As Long, pHandles As Long, ByVal fWaitAll As Long, ByVal dwMilliseconds As Long, ByVal dwWakeMask As Long) As Long


Statement:
Public Const QS_MOUSE = (QS_MOUSEMOVE Or QS_MOUSEBUTTON)


Statement:
Public Const QS_INPUT = (QS_MOUSE Or QS_KEY)


Statement:
Public Const QS_ALLEVENTS = (QS_INPUT Or QS_POSTMESSAGE Or QS_TIMER Or QS_PAINT Or QS_HOTKEY)


Statement:
Public Const QS_ALLINPUT = (QS_SENDMESSAGE Or QS_PAINT Or QS_TIMER Or QS_POSTMESSAGE Or QS_MOUSEBUTTON Or QS_MOUSEMOVE Or QS_HOTKEY Or QS_KEY)


Statement:
Declare Function KillTimer Lib "user32" Alias "KillTimer" (ByVal hwnd As Long, ByVal nIDEvent As Long) As Long


Statement:
Declare Function IsWindowUnicode Lib "user32" Alias "IsWindowUnicode" (ByVal hwnd As Long) As Long


Statement:
Declare Function EnableWindow Lib "user32" Alias "EnableWindow" (ByVal hwnd As Long, ByVal fEnable As Long) As Long


Statement:
Declare Function IsWindowEnabled Lib "user32" Alias "IsWindowEnabled" (ByVal hwnd As Long) As Long


Statement:
Declare Function LoadAccelerators Lib "user32" Alias "LoadAcceleratorsA" (ByVal hInstance As Long, ByVal lpTableName As String) As Long


Statement:
Declare Function CreateAcceleratorTable Lib "user32" Alias "CreateAcceleratorTableA" (lpaccl As ACCEL, ByVal cEntries As Long) As Long


Statement:
Declare Function DestroyAcceleratorTable Lib "user32" Alias "DestroyAcceleratorTable" (ByVal haccel As Long) As Long


Statement:
Declare Function CopyAcceleratorTable Lib "user32" Alias "CopyAcceleratorTableA" (ByVal hAccelSrc As Long, lpAccelDst As ACCEL, ByVal cAccelEntries As Long) As Long


Statement:
Declare Function TranslateAccelerator Lib "user32" Alias "TranslateAcceleratorA" (ByVal hwnd As Long, ByVal hAccTable As Long, lpMsg As MSG) As Long


Statement:
Declare Function GetSystemMetrics Lib "user32" Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long


Statement:
Declare Function LoadMenu Lib "user32" Alias "LoadMenuA" (ByVal hInstance As Long, ByVal lpString As String) As Long


Statement:
Declare Function LoadMenuIndirect Lib "user32" Alias "LoadMenuIndirectA" (ByVal lpMenuTemplate As Long) As Long


Statement:
Declare Function GetMenu Lib "user32" Alias "GetMenu" (ByVal hwnd As Long) As Long


Statement:
Declare Function SetMenu Lib "user32" Alias "SetMenu" (ByVal hwnd As Long, ByVal hMenu As Long) As Long


Statement:
Declare Function HiliteMenuItem Lib "user32" Alias "HiliteMenuItem" (ByVal hwnd As Long, ByVal hMenu As Long, ByVal wIDHiliteItem As Long, ByVal wHilite As Long) As Long


Statement:
Declare Function GetMenuString Lib "user32" Alias "GetMenuStringA" (ByVal hMenu As Long, ByVal wIDItem As Long, ByVal lpString As String, ByVal nMaxCount As Long, ByVal wFlag As Long) As Long


Statement:
Declare Function GetMenuState Lib "user32" Alias "GetMenuState" (ByVal hMenu As Long, ByVal wID As Long, ByVal wFlags As Long) As Long


Statement:
Declare Function DrawMenuBar Lib "user32" Alias "DrawMenuBar" (ByVal hwnd As Long) As Long


Statement:
Declare Function GetSystemMenu Lib "user32" Alias "GetSystemMenu" (ByVal hwnd As Long, ByVal bRevert As Long) As Long


Statement:
Declare Function CreateMenu Lib "user32" Alias "CreateMenu" () As Long


Statement:
Declare Function CreatePopupMenu Lib "user32" Alias "CreatePopupMenu" () As Long


Statement:
Declare Function DestroyMenu Lib "user32" Alias "DestroyMenu" (ByVal hMenu As Long) As Long


Statement:
Declare Function CheckMenuItem Lib "user32" Alias "CheckMenuItem" (ByVal hMenu As Long, ByVal wIDCheckItem As Long, ByVal wCheck As Long) As Long


Statement:
Declare Function EnableMenuItem Lib "user32" Alias "EnableMenuItem" (ByVal hMenu As Long, ByVal wIDEnableItem As Long, ByVal wEnable As Long) As Long


Statement:
Declare Function GetSubMenu Lib "user32" Alias "GetSubMenu" (ByVal hMenu As Long, ByVal nPos As Long) As Long


Statement:
Declare Function GetMenuItemID Lib "user32" Alias "GetMenuItemID" (ByVal hMenu As Long, ByVal nPos As Long) As Long


Statement:
Declare Function GetMenuItemCount Lib "user32" Alias "GetMenuItemCount" (ByVal hMenu As Long) As Long


Statement:
Declare Function InsertMenu Lib "user32" Alias "InsertMenuA" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpNewItem As String) As Long


Statement:
Declare Function AppendMenu Lib "user32" Alias "AppendMenuA" (ByVal hMenu As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpNewItem As String) As Long


Statement:
Declare Function ModifyMenu Lib "user32" Alias "ModifyMenuA" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpString As String) As Long


Statement:
Declare Function RemoveMenu Lib "user32" Alias "RemoveMenu" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long


Statement:
Declare Function DeleteMenu Lib "user32" Alias "DeleteMenu" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long


Statement:
Declare Function SetMenuItemBitmaps Lib "user32" Alias "SetMenuItemBitmaps" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal hBitmapUnchecked As Long, ByVal hBitmapChecked As Long) As Long


Statement:
Declare Function GetMenuCheckMarkDimensions Lib "user32" Alias "GetMenuCheckMarkDimensions" () As Long


Statement:
Declare Function TrackPopupMenu Lib "user32" Alias "TrackPopupMenu" (ByVal hMenu As Long, ByVal wFlags As Long, ByVal x As Long, ByVal y As Long, ByVal nReserved As Long, ByVal hwnd As Long, lprc As Rect) As Long


Statement:
Declare Function DrawIcon Lib "user32" Alias "DrawIcon" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal hIcon As Long) As Long


Statement:
Declare Function DrawText Lib "user32" Alias "DrawTextA" (ByVal hdc As Long, ByVal lpStr As String, ByVal nCount As Long, lpRect As RECT, ByVal wFormat As Long) As Long


Statement:
Declare Function TabbedTextOut Lib "user32" Alias "TabbedTextOutA" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal lpString As String, ByVal nCount As Long, ByVal nTabPositions As Long, lpnTabStopPositions As Long, ByVal nTabOrigin As Long) As Long


Statement:
Declare Function GetTabbedTextExtent Lib "user32" Alias "GetTabbedTextExtentA" (ByVal hdc As Long, ByVal lpString As String, ByVal nCount As Long, ByVal nTabPositions As Long, lpnTabStopPositions As Long) As Long


Statement:
Declare Function UpdateWindow Lib "user32" Alias "UpdateWindow" (ByVal hwnd As Long) As Long


Statement:
Declare Function SetActiveWindow Lib "user32" Alias "SetActiveWindow" (ByVal hwnd As Long) As Long


Statement:
Declare Function GetForegroundWindow Lib "user32" Alias "GetForegroundWindow" () As Long


Statement:
Declare Function SetForegroundWindow Lib "user32" Alias "SetForegroundWindow" (ByVal hwnd As Long) As Long


Statement:
Declare Function WindowFromDC Lib "user32" Alias "WindowFromDC" (ByVal hdc As Long) As Long


Statement:
Declare Function GetDC Lib "user32" Alias "GetDC" (ByVal hwnd As Long) As Long


Statement:
Declare Function GetDCEx Lib "user32" Alias "GetDCEx" (ByVal hwnd As Long, ByVal hrgnclip As Long, ByVal fdwOptions As Long) As Long


Statement:
Public Const DCX_INTERSECTUPDATE = &H200&


Statement:
Public Const DCX_LOCKWINDOWUPDATE = &H400&


Statement:
Declare Function GetWindowDC Lib "user32" Alias "GetWindowDC" (ByVal hwnd As Long) As Long


Statement:
Declare Function ReleaseDC Lib "user32" Alias "ReleaseDC" (ByVal hwnd As Long, ByVal hdc As Long) As Long


Statement:
Declare Function BeginPaint Lib "user32" Alias "BeginPaint" (ByVal hwnd As Long, lpPaint As PAINTSTRUCT) As Long


Statement:
Declare Function EndPaint Lib "user32" Alias "EndPaint" (ByVal hwnd As Long, lpPaint As PAINTSTRUCT) As Long


Statement:
Declare Function GetUpdateRect Lib "user32" Alias "GetUpdateRect" (ByVal hwnd As Long, lpRect As RECT, ByVal bErase As Long) As Long


Statement:
Declare Function GetUpdateRgn Lib "user32" Alias "GetUpdateRgn" (ByVal hwnd As Long, ByVal hRgn As Long, ByVal fErase As Long) As Long


Statement:
Declare Function ExcludeUpdateRgn Lib "user32" Alias "ExcludeUpdateRgn" (ByVal hdc As Long, ByVal hwnd As Long) As Long


Statement:
Declare Function InvalidateRect Lib "user32" Alias "InvalidateRect" (ByVal hwnd As Long, lpRect As RECT, ByVal bErase As Long) As Long


Statement:
Declare Function ValidateRect Lib "user32" Alias "ValidateRect" (ByVal hwnd As Long, lpRect As RECT) As Long


Statement:
Declare Function InvalidateRgn Lib "user32" Alias "InvalidateRgn" (ByVal hwnd As Long, ByVal hRgn As Long, ByVal bErase As Long) As Long


Statement:
Declare Function ValidateRgn Lib "user32" Alias "ValidateRgn" (ByVal hwnd As Long, ByVal hRgn As Long) As Long


Statement:
Declare Function RedrawWindow Lib "user32" Alias "RedrawWindow" (ByVal hwnd As Long, lprcUpdate As RECT, ByVal hrgnUpdate As Long, ByVal fuRedraw As Long) As Long


Statement:
Declare Function LockWindowUpdate Lib "user32" Alias "LockWindowUpdate" (ByVal hwndLock As Long) As Long


Statement:
Declare Function ScrollWindow Lib "user32" Alias "ScrollWindow" (ByVal hWnd As Long, ByVal XAmount As Long, ByVal YAmount As Long, lpRect As RECT, lpClipRect As RECT) As Long


Statement:
Declare Function ScrollDC Lib "user32" Alias "ScrollDC" (ByVal hdc As Long, ByVal dx As Long, ByVal dy As Long, lprcScroll As RECT, lprcClip As RECT, ByVal hrgnUpdate As Long, lprcUpdate As RECT) As Long


Statement:
Declare Function ScrollWindowEx Lib "user32" Alias "ScrollWindowEx" (ByVal hwnd As Long, ByVal dx As Long, ByVal dy As Long, lprcScroll As RECT, lprcClip As RECT, ByVal hrgnUpdate As Long, lprcUpdate As RECT, ByVal fuScroll As Long) As Long


Statement:
Declare Function SetScrollPos Lib "user32" Alias "SetScrollPos" (ByVal hwnd As Long, ByVal nBar As Long, ByVal nPos As Long, ByVal bRedraw As Long) As Long


Statement:
Declare Function GetScrollPos Lib "user32" Alias "GetScrollPos" (ByVal hwnd As Long, ByVal nBar As Long) As Long


Statement:
Declare Function SetScrollRange Lib "user32" Alias "SetScrollRange" (ByVal hwnd As Long, ByVal nBar As Long, ByVal nMinPos As Long, ByVal nMaxPos As Long, ByVal bRedraw As Long) As Long


Statement:
Declare Function GetScrollRange Lib "user32" Alias "GetScrollRange" (ByVal hwnd As Long, ByVal nBar As Long, lpMinPos As Long, lpMaxPos As Long) As Long


Statement:
Declare Function ShowScrollBar Lib "user32" Alias "ShowScrollBar" (ByVal hwnd As Long, ByVal wBar As Long, ByVal bShow As Long) As Long


Statement:
Declare Function EnableScrollBar Lib "user32" Alias "EnableScrollBar" (ByVal hwnd As Long, ByVal wSBflags As Long, ByVal wArrows As Long) As Long


Statement:
Public Const ESB_DISABLE_LTUP = ESB_DISABLE_LEFT


Statement:
Public Const ESB_DISABLE_RTDN = ESB_DISABLE_RIGHT


Statement:
Declare Function SetProp Lib "user32" Alias "SetPropA" (ByVal hwnd As Long, ByVal lpString As String, ByVal hData As Long) As Long


Statement:
Declare Function GetProp Lib "user32" Alias "GetPropA" (ByVal hwnd As Long, ByVal lpString As String) As Long


Statement:
Declare Function RemoveProp Lib "user32" Alias "RemovePropA" (ByVal hwnd As Long, ByVal lpString As String) As Long


Statement:
Declare Function SetWindowText Lib "user32" Alias "SetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String) As Long


Statement:
Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long


Statement:
Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal hwnd As Long) As Long


Statement:
Declare Function GetClientRect Lib "user32" Alias "GetClientRect" (ByVal hwnd As Long, lpRect As RECT) As Long


Statement:
Declare Function GetWindowRect Lib "user32" Alias "GetWindowRect" (ByVal hwnd As Long, lpRect As RECT) As Long


Statement:
Declare Function AdjustWindowRect Lib "user32" Alias "AdjustWindowRectA" (lpRect As RECT, ByVal dwStyle As Long, ByVal bMenu As Long) As Long


Statement:
Declare Function AdjustWindowRectEx Lib "user32" Alias "AdjustWindowRectEx" (lpRect As RECT, ByVal dsStyle As Long, ByVal bMenu As Long, ByVal dwEsStyle As Long) As Long


Statement:
Public Const MB_ICONINFORMATION = MB_ICONASTERISK


Statement:
Public Const MB_DEFAULT_DESKTOP_ONLY = &H20000


Statement:
Declare Function MessageBox Lib "user32" Alias "MessageBoxA" (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Long


Statement:
Declare Function MessageBoxEx Lib "user32" Alias "MessageBoxExA" (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal uType As Long, ByVal wLanguageId As Long) As Long


Statement:
Declare Function MessageBeep Lib "user32" Alias "BeepA" (ByVal wType As Long) As Long


Statement:
Declare Function ShowCursor Lib "user32" Alias "ShowCursor" (ByVal bShow As Long) As Long


Statement:
Declare Function SetCursorPos Lib "user32" Alias "SetCursorPos" (ByVal x As Long, ByVal y As Long) As Long


Statement:
Declare Function SetCursor Lib "user32" Alias "SetCursor" (ByVal hCursor As Long) As Long


Statement:
Declare Function GetCursorPos Lib "user32" Alias "GetCursorPos" (lpPoint As POINTAPI) As Long


Statement:
Declare Function ClipCursor Lib "user32" Alias "ClipCursor" (lpRect As Any) As Long


Statement:
Declare Function GetCursor Lib "user32" Alias "GetCursor" () As Long


Statement:
Declare Function GetClipCursor Lib "user32" Alias "GetClipCursor" (lprc As RECT) As Long


Statement:
Declare Function CreateCaret Lib "user32" Alias "CreateCaret" (ByVal hwnd As Long, ByVal hBitmap As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long


Statement:
Declare Function GetCaretBlinkTime Lib "user32" Alias "GetCaretBlinkTime" () As Long


Statement:
Declare Function SetCaretBlinkTime Lib "user32" Alias "SetCaretBlinkTime" (ByVal wMSeconds As Long) As Long


Statement:
Declare Function DestroyCaret Lib "user32" Alias "DestroyCaret" () As Long


Statement:
Declare Function HideCaret Lib "user32" Alias "HideCaret" (ByVal hwnd As Long) As Long


Statement:
Declare Function ShowCaret Lib "user32" Alias "ShowCaret" (ByVal hwnd As Long) As Long


Statement:
Declare Function SetCaretPos Lib "user32" Alias "SetCaretPos" (ByVal x As Long, ByVal y As Long) As Long


Statement:
Declare Function GetCaretPos Lib "user32" Alias "GetCaretPos" (lpPoint As POINTAPI) As Long


Statement:
Declare Function ClientToScreen Lib "user32" Alias "ClientToScreen" (ByVal hwnd As Long, lpPoint As POINTAPI) As Long


Statement:
Declare Function ScreenToClient Lib "user32" Alias "ScreenToClient" (ByVal hwnd As Long, lpPoint As POINTAPI) As Long


Statement:
Declare Function MapWindowPoints Lib "user32" Alias "MapWindowPoints" (ByVal hwndFrom As Long, ByVal hwndTo As Long, lppt As Any, ByVal cPoints As Long) As Long


Statement:
Declare Function WindowFromPoint Lib "user32" Alias "WindowFromPoint" (ByVal xPoint As Long, ByVal yPoint As Long) As Long


Statement:
Declare Function ChildWindowFromPoint Lib "user32" Alias "ChildWindowFromPoint" (ByVal hWnd As Long, ByVal xPoint As Long, ByVal yPoint As Long) As Long


Statement:
Public Const CTLCOLOR_MAX = 8   '  three bits max


Statement:
Public Const COLOR_INACTIVECAPTIONTEXT = 19


Statement:
Declare Function GetSysColor Lib "user32" Alias "GetSysColor" (ByVal nIndex As Long) As Long


Statement:
Declare Function SetSysColors Lib "user32" Alias "SetSysColors" (ByVal nChanges As Long, lpSysColor As Long, lpColorValues As Long) As Long


Statement:
Declare Function DrawFocusRect Lib "user32" Alias "DrawFocusRect" (ByVal hdc As Long, lpRect As RECT) As Long


Statement:
Declare Function FillRect Lib "user32" Alias "FillRect" (ByVal hdc As Long, lpRect As RECT, ByVal hBrush As Long) As Long


Statement:
Declare Function FrameRect Lib "user32" Alias "FrameRect" (ByVal hdc As Long, lpRect As RECT, ByVal hBrush As Long) As Long


Statement:
Declare Function InvertRect Lib "user32" Alias "InvertRect" (ByVal hdc As Long, lpRect As RECT) As Long


Statement:
Declare Function SetRect Lib "user32" Alias "SetRect" (lpRect As RECT, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long


Statement:
Declare Function SetRectEmpty Lib "user32" Alias "SetRectEmpty" (lpRect As RECT) As Long


Statement:
Declare Function CopyRect Lib "user32" Alias "CopyRect" (lpDestRect As RECT, lpSourceRect As RECT) As Long


Statement:
Declare Function InflateRect Lib "user32" Alias "InflateRect" (lpRect As RECT, ByVal x As Long, ByVal y As Long) As Long


Statement:
Declare Function IntersectRect Lib "user32" Alias "IntersectRect" (lpDestRect As RECT, lpSrc1Rect As RECT, lpSrc2Rect As RECT) As Long


Statement:
Declare Function UnionRect Lib "user32" Alias "UnionRect" (lpDestRect As RECT, lpSrc1Rect As RECT, lpSrc2Rect As RECT) As Long


Statement:
Declare Function SubtractRect Lib "user32" Alias "SubtractRect" (lprcDst As RECT, lprcSrc1 As RECT, lprcSrc2 As RECT) As Long


Statement:
Declare Function OffsetRect Lib "user32" Alias "OffsetRect" (lpRect As RECT, ByVal x As Long, ByVal y As Long) As Long


Statement:
Declare Function IsRectEmpty Lib "user32" Alias "IsRectEmpty" (lpRect As RECT) As Long


Statement:
Declare Function EqualRect Lib "user32" Alias "EqualRect" (lpRect1 As RECT, lpRect2 As RECT) As Long


Statement:
Declare Function PtInRect Lib "user32" Alias "PtInRect" (lpRect As RECT, pt As POINTAPI) As Long


Statement:
Declare Function GetWindowWord Lib "user32" Alias "GetWindowWord" (ByVal hwnd As Long, ByVal nIndex As Long) As Integer


Statement:
Declare Function SetWindowWord Lib "user32" Alias "SetWindowWord" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal wNewWord As Long) As Long


Statement:
Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long


Statement:
Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long


Statement:
Declare Function GetClassWord Lib "user32" Alias "GetClassWord" (ByVal hwnd As Long, ByVal nIndex As Long) As Long


Statement:
Declare Function SetClassWord Lib "user32" Alias "SetClassWord" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal wNewWord As Long) As Long


Statement:
Declare Function GetClassLong Lib "user32" Alias "GetClassLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long


Statement:
Declare Function SetClassLong Lib "user32" Alias "SetClassLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long


Statement:
Declare Function GetDesktopWindow Lib "user32" Alias "GetDesktopWindow" () As Long


Statement:
Declare Function GetParent Lib "user32" Alias "GetParent" (ByVal hwnd As Long) As Long


Statement:
Declare Function SetParent Lib "user32" Alias "SetParent" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long


Statement:
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long


Statement:
Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long


Statement:
Declare Function GetTopWindow Lib "user32" Alias "GetTopWindow" (ByVal hwnd As Long) As Long


Statement:
Declare Function GetNextWindow Lib "user32" Alias "GetNextWindow" (ByVal hwnd As Long, ByVal wFlag As Long) As Long


Statement:
Declare Function GetWindowThreadProcessId Lib "user32" Alias "GetWindowThreadProcessId" (ByVal hwnd As Long, lpdwProcessId As Long) As Long


Statement:
Declare Function GetLastActivePopup Lib "user32" Alias "GetLastActivePopup" (ByVal hwndOwnder As Long) As Long


Statement:
Declare Function GetWindow Lib "user32" Alias "GetWindow" (ByVal hwnd As Long, ByVal wCmd As Long) As Long


Statement:
Declare Function UnhookWindowsHookEx Lib "user32" Alias "UnhookWindowsHookEx" (ByVal hHook As Long) As Long


Statement:
Declare Function CallNextHookEx Lib "user32" Alias "CallNextHookEx" (ByVal hHook As Long, ByVal ncode As Long, ByVal wParam As Long, lParam As Any) As Long


Statement:
Public Const MF_USECHECKBITMAPS = &H200&


Statement:
Type MENUITEMTEMPLATEHEADER
        versionNumber As Integer
        offset As Integer
End Type


Statement:
Type MENUITEMTEMPLATE
        mtOption As Integer
        mtID As Integer
        mtString As Byte
End Type


Statement:
Declare Function LoadBitmap Lib "user32" Alias "LoadBitmapA" (ByVal hInstance As Long, ByVal lpBitmapName As String) As Long


Statement:
Declare Function LoadCursor Lib "user32" Alias "LoadCursorA" (ByVal hInstance As Long, ByVal lpCursorName As String) As Long


Statement:
Declare Function CreateCursor Lib "user32" Alias "CreateCursor" (ByVal hInstance As Long, ByVal nXhotspot As Long, ByVal nYhotspot As Long, ByVal nWidth As Long, ByVal nHeight As Long, lpANDbitPlane As Any, lpXORbitPlane As Any) As Long


Statement:
Declare Function DestroyCursor Lib "user32" Alias "DestroyCursor" (ByVal hCursor As Long) As Long


Statement:
Declare Function CopyCursor Lib "user32" Alias "CopyCursor" (ByVal hcur As Long) As Long


Statement:
Type ICONINFO
        fIcon As Boolean
        xHotspot As Long
        yHotspot As Long
        hbmMask As Long
        hbmColor As Long
End Type


Statement:
Declare Function LoadIcon Lib "user32" Alias "LoadIconA" (ByVal hInstance As Long, ByVal lpIconName As String) As Long


Statement:
Declare Function CreateIcon Lib "user32" Alias "CreateIcon" (ByVal hInstance As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal nPlanes As Byte, ByVal nBitsPixel As Byte, lpANDbits As Byte, lpXORbits As Byte) As Long


Statement:
Declare Function DestroyIcon Lib "user32" Alias "DestroyIcon" (ByVal hIcon As Long) As Long


Statement:
Declare Function LookupIconIdFromDirectory Lib "user32" Alias "LookupIconIdFromDirectory" (presbits As Byte, ByVal fIcon As Long) As Long


Statement:
Declare Function CreateIconFromResource Lib "user32" Alias "CreateIconFromResource" (presbits As Byte, ByVal dwResSize As Long, ByVal fIcon As Long, ByVal dwVer As Long) As Long


Statement:
Declare Function CreateIconIndirect Lib "user32" Alias "CreateIconIndirect" (piconinfo As ICONINFO) As Long


Statement:
Declare Function CopyIcon Lib "user32" Alias "CopyIcon" (ByVal hIcon As Long) As Long


Statement:
Declare Function GetIconInfo Lib "user32" Alias "GetIconInfo" (ByVal hIcon As Long, piconinfo As ICONINFO) As Long


Statement:
Public Const OCR_NO = 32648 ' not in win3.1


Statement:
Public Const ORD_LANGDRIVER = 1 '  The ordinal number for the entry point of


Statement:
Declare Function LoadString Lib "user32" Alias "LoadStringA" (ByVal hInstance As Long, ByVal wID As Long, ByVal lpBuffer As String, ByVal nBufferMax As Long) As Long


Statement:
Public Const EM_GETFIRSTVISIBLELINE = &HCE


Statement:
Public Const SS_NOPREFIX = &H80           '  Don't do "&" character translation


Statement:
Declare Function IsDialogMessage Lib "user32" Alias "IsDialogMessageA" (ByVal hDlg As Long, lpMsg As MSG) As Long


Statement:
Declare Function MapDialogRect Lib "user32" Alias "MapDialogRect" (ByVal hDlg As Long, lpRect As RECT) As Long


Statement:
Declare Function DlgDirList Lib "user32" Alias "DlgDirListA" (ByVal hDlg As Long, ByVal lpPathSpec As String, ByVal nIDListBox As Long, ByVal nIDStaticPath As Long, ByVal wFileType As Long) As Long


Statement:
Declare Function DlgDirSelectEx Lib "user32" Alias "DlgDirSelectExA" (ByVal hWndDlg As Long, ByVal lpszPath As String, ByVal cbPath As Long, ByVal idListBox As Long) As Long


Statement:
Declare Function DlgDirListComboBox Lib "user32" Alias "DlgDirListComboBoxA" (ByVal hDlg As Long, ByVal lpPathSpec As String, ByVal nIDComboBox As Long, ByVal nIDStaticPath As Long, ByVal wFileType As Long) As Long


Statement:
Declare Function DlgDirSelectComboBoxEx Lib "user32" Alias "DlgDirSelectComboBoxExA" (ByVal hWndDlg As Long, ByVal lpszPath As String, ByVal cbPath As Long, ByVal idComboBox As Long) As Long


Statement:
Public Const DS_LOCALEDIT = &H20          '  Edit items get Local storage.


Statement:
Public Const DS_SETFONT = &H40            '  User specified font for Dlg controls


Statement:
Public Const DS_MODALFRAME = &H80         '  Can be combined with WS_CAPTION


Statement:
Public Const DS_NOIDLEMSG = &H100         '  WM_ENTERIDLE message will not be sent


Statement:
Public Const DS_SETFOREGROUND = &H200     '  not in win3.1


Statement:
Public Const DC_HASDEFID = &H534      '0x534B


Statement:
Public Const DLGC_WANTARROWS = &H1              '  Control wants arrow keys


Statement:
Public Const DLGC_WANTTAB = &H2                 '  Control wants tab keys


Statement:
Public Const DLGC_WANTALLKEYS = &H4             '  Control wants all keys


Statement:
Public Const DLGC_WANTMESSAGE = &H4             '  Pass message to control


Statement:
Public Const DLGC_HASSETSEL = &H8               '  Understands EM_SETSEL message


Statement:
Public Const DLGC_DEFPUSHBUTTON = &H10          '  Default pushbutton


Statement:
Public Const DLGC_UNDEFPUSHBUTTON = &H20        '  Non-default pushbutton


Statement:
Public Const DLGC_RADIOBUTTON = &H40            '  Radio button


Statement:
Public Const DLGC_WANTCHARS = &H80              '  Want WM_CHAR messages


Statement:
Public Const DLGC_STATIC = &H100                '  Static item: don't include


Statement:
Public Const DLGC_BUTTON = &H2000               '  Button item: can be checked


Statement:
Public Const LB_GETHORIZONTALEXTENT = &H193


Statement:
Public Const LB_SETHORIZONTALEXTENT = &H194


Statement:
Public Const LBS_OWNERDRAWVARIABLE = &H20&


Statement:
Public Const LBS_NOINTEGRALHEIGHT = &H100&


Statement:
Public Const LBS_WANTKEYBOARDINPUT = &H400&


Statement:
Public Const LBS_DISABLENOSCROLL = &H1000&


Statement:
Public Const LBS_STANDARD = (LBS_NOTIFY Or LBS_SORT Or WS_VSCROLL Or WS_BORDER)


Statement:
Public Const CBS_OWNERDRAWVARIABLE = &H20&


Statement:
Public Const CBS_NOINTEGRALHEIGHT = &H400&


Statement:
Public Const CBS_DISABLENOSCROLL = &H800&


Statement:
Public Const CB_GETDROPPEDCONTROLRECT = &H152


Statement:
Public Const SBS_SIZEBOXTOPLEFTALIGN = &H2&


Statement:
Public Const SBS_SIZEBOXBOTTOMRIGHTALIGN = &H4&


Statement:
Public Const SBM_SETPOS = &HE0 ' not in win3.1


Statement:
Public Const SBM_GETPOS = &HE1 ' not in win3.1


Statement:
Public Const SBM_SETRANGE = &HE2 ' not in win3.1


Statement:
Public Const SBM_SETRANGEREDRAW = &HE6 ' not in win3.1


Statement:
Public Const SBM_GETRANGE = &HE3 ' not in win3.1


Statement:
Public Const SBM_ENABLE_ARROWS = &HE4 ' not in win3.1


Statement:
Type MDICREATESTRUCT
        szClass As String
        szTitle As String
        hOwner As Long
        x As Long
        y As Long
        cx As Long
        cy As Long
        style As Long
        lParam As Long
End Type


Statement:
Type CLIENTCREATESTRUCT
        hWindowMenu As Long
        idFirstChild As Long
End Type


Statement:
Declare Function DefFrameProc Lib "user32" Alias "DefFrameProcA" (ByVal hwnd As Long, ByVal hWndMDIClient As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long


Statement:
Declare Function DefMDIChildProc Lib "user32" Alias "DefMDIChildProcA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long


Statement:
Declare Function TranslateMDISysAccel Lib "user32" Alias "TranslateMDISysAccel" (ByVal hWndClient As Long, lpMsg As MSG) As Long


Statement:
Declare Function ArrangeIconicWindows Lib "user32" Alias "ArrangeIconicWindows" (ByVal hwnd As Long) As Long


Statement:
Declare Function CreateMDIWindow Lib "user32" Alias "CreateMDIWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String, ByVal dwStyle As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hWndParent As Long, ByVal hInstance As Long, ByVal lParam As Long) As Long


Statement:
Type MULTIKEYHELP
        mkSize As Long
        mkKeylist As Byte
        szKeyphrase As String * 253 ' Array length is arbitrary; may be changed
End Type


Statement:
Type HELPWININFO
        wStructSize As Long
        x As Long
        y As Long
        dx As Long
        dy As Long
        wMax As Long
        rgchMember As String * 2
End Type


Statement:
Public Const HELP_CONTEXT = &H1          '  Display topic in ulTopic


Statement:
Public Const HELP_QUIT = &H2             '  Terminate help


Statement:
Public Const HELP_INDEX = &H3            '  Display index


Statement:
Public Const HELP_HELPONHELP = &H4       '  Display help on using help


Statement:
Public Const HELP_SETINDEX = &H5         '  Set current Index for multi index help


Statement:
Public Const HELP_KEY = &H101            '  Display topic for keyword in offabData


Statement:
Declare Function WinHelp Lib "user32" Alias "WinHelpA" (ByVal hwnd As Long, ByVal lpHelpFile As String, ByVal wCommand As Long, ByVal dwData As Long) As Long


Statement:
Public Const SPI_ICONHORIZONTALSPACING = 13


Statement:
Public Const SPI_GETSCREENSAVETIMEOUT = 14


Statement:
Public Const SPI_SETSCREENSAVETIMEOUT = 15


Statement:
Public Const SPI_GETSCREENSAVEACTIVE = 16


Statement:
Public Const SPI_SETSCREENSAVEACTIVE = 17


Statement:
Public Const SPI_GETGRIDGRANULARITY = 18


Statement:
Public Const SPI_SETGRIDGRANULARITY = 19


Statement:
Public Const SPI_ICONVERTICALSPACING = 24


Statement:
Public Const SPI_GETMENUDROPALIGNMENT = 27


Statement:
Public Const SPI_SETMENUDROPALIGNMENT = 28


Statement:
Public Const SPI_SETDOUBLECLKHEIGHT = 30


Statement:
Public Const SPI_GETICONTITLELOGFONT = 31


Statement:
Public Const SPI_SETDOUBLECLICKTIME = 32


Statement:
Public Const SPI_SETMOUSEBUTTONSWAP = 33


Statement:
Public Const SPI_SETICONTITLELOGFONT = 34


Statement:
Public Const SPI_SETDRAGFULLWINDOWS = 37


Statement:
Public Const SPI_GETDRAGFULLWINDOWS = 38


Statement:
Public Const SPI_GETNONCLIENTMETRICS = 41


Statement:
Public Const SPI_SETNONCLIENTMETRICS = 42


Statement:
Public Const SPI_GETMINIMIZEDMETRICS = 43


Statement:
Public Const SPI_SETMINIMIZEDMETRICS = 44


Statement:
Public Const SPI_GETLOWPOWERTIMEOUT = 79


Statement:
Public Const SPI_GETPOWEROFFTIMEOUT = 80


Statement:
Public Const SPI_SETLOWPOWERTIMEOUT = 81


Statement:
Public Const SPI_SETPOWEROFFTIMEOUT = 82


Statement:
Public Const SPI_GETDEFAULTINPUTLANG = 89


Statement:
Public Const SPI_SETDEFAULTINPUTLANG = 90


Statement:
Public Const SPI_GETWINDOWSEXTENSION = 92


Statement:
Public Const SPI_SCREENSAVERRUNNING = 97


Statement:
Public Const SPIF_SENDWININICHANGE = &H2


Statement:
Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As Any, ByVal fuWinIni As Long) As Long


Statement:
Public Const WM_DDE_INITIATE = (WM_DDE_FIRST)


Statement:
Public Const WM_DDE_TERMINATE = (WM_DDE_FIRST + 1)


Statement:
Public Const WM_DDE_ADVISE = (WM_DDE_FIRST + 2)


Statement:
Public Const WM_DDE_UNADVISE = (WM_DDE_FIRST + 3)


Statement:
Public Const WM_DDE_ACK = (WM_DDE_FIRST + 4)


Statement:
Public Const WM_DDE_DATA = (WM_DDE_FIRST + 5)


Statement:
Public Const WM_DDE_REQUEST = (WM_DDE_FIRST + 6)


Statement:
Public Const WM_DDE_POKE = (WM_DDE_FIRST + 7)


Statement:
Public Const WM_DDE_EXECUTE = (WM_DDE_FIRST + 8)


Statement:
Public Const WM_DDE_LAST = (WM_DDE_FIRST + 8)


Statement:
Type DDEACK
        bAppReturnCode As Integer
        Reserved As Integer
        fbusy As Integer
        fack As Integer
End Type


Statement:
Type DDEADVISE
        Reserved As Integer
        fDeferUpd As Integer
        fAckReq As Integer
        cfFormat As Integer
End Type


Statement:
Type DDEDATA
        unused As Integer
        fresponse As Integer
        fRelease As Integer
        Reserved As Integer
        fAckReq As Integer
        cfFormat As Integer
        Value(1) As Byte
End Type


Statement:
Type DDEPOKE
        unused As Integer
        fRelease As Integer
        fReserved As Integer
        cfFormat As Integer
        Value(1) As Byte
End Type


Statement:
Type DDELN
        unused As Integer
        fRelease As Integer
        fDeferUpd As Integer
        fAckReq As Integer
        cfFormat As Integer
End Type


Statement:
Type DDEUP
        unused As Integer
        fAck As Integer
        fRelease As Integer
        fReserved As Integer
        fAckReq As Integer
        cfFormat As Integer
        rgb(1) As Byte
End Type


Statement:
Declare Function DdeSetQualityOfService Lib "user32" Alias "DdeSetQualityOfService" (ByVal hWndClient As Long, pqosNew As SECURITY_QUALITY_OF_SERVICE, pqosPrev As SECURITY_QUALITY_OF_SERVICE) As Long


Statement:
Declare Function ImpersonateDdeClientWindow Lib "user32" Alias "ImpersonateDdeClientWindow" (ByVal hWndClient As Long, ByVal hWndServer As Long) As Long


Statement:
Declare Function PackDDElParam Lib "user32" Alias "PackDDElParam" (ByVal msg As Long, ByVal uiLo As Long, ByVal uiHi As Long) As Long


Statement:
Declare Function UnpackDDElParam Lib "user32" Alias "UnpackDDElParam" (ByVal msg As Long, ByVal lParam As Long, puiLo As Long, puiHi As Long) As Long


Statement:
Declare Function FreeDDElParam Lib "user32" Alias "FreeDDElParam" (ByVal msg As Long, ByVal lParam As Long) As Long


Statement:
Declare Function ReuseDDElParam Lib "user32" Alias "ReuseDDElParam" (ByVal lParam As Long, ByVal msgIn As Long, ByVal msgOut As Long, ByVal uiLo As Long, ByVal uiHi As Long) As Long


Statement:
Type HSZPAIR
        hszSvc As Long
        hszTopic As Long
End Type


Statement:
Type SECURITY_QUALITY_OF_SERVICE
    Length As Long
    Impersonationlevel As Integer
    ContextTrackingMode As Integer
    EffectiveOnly As Boolean
End Type


Statement:
Type CONVCONTEXT
        cb As Long
        wFlags As Long
        wCountryID As Long
        iCodePage As Long
        dwLangID As Long
        dwSecurity As Long
        qos As SECURITY_QUALITY_OF_SERVICE
End Type


Statement:
Type CONVINFO
        cb As Long
        hUser As Long
        hConvPartner As Long
        hszSvcPartner As Long
        hszServiceReq As Long
        hszTopic As Long
        hszItem As Long
        wFmt As Long
        wType As Long
        wStatus As Long
        wConvst As Long
        wLastError As Long
        hConvList As Long
        ConvCtxt As CONVCONTEXT
        hwnd As Long
        hwndPartner As Long
End Type


Statement:
Public Const XST_NULL = 0  '  quiescent states


Statement:
Public Const XST_INIT1 = 3  '  mid-initiation states


Statement:
Public Const XST_REQSENT = 5  '  active conversation states


Statement:
Public Const DDE_FACKRESERVED = (Not (DDE_FACK Or DDE_FBUSY Or DDE_FAPPSTATUS))


Statement:
Public Const DDE_FADVRESERVED = (Not (DDE_FACKREQ Or DDE_FDEFERUPD))


Statement:
Public Const DDE_FDATRESERVED = (Not (DDE_FACKREQ Or DDE_FRELEASE Or DDE_FREQUESTED))


Statement:
Public Const DDE_FPOKRESERVED = (Not (DDE_FRELEASE))


Statement:
Public Const CP_WINANSI = 1004  '  default codepage for windows old DDE convs.


Statement:
Public Const XTYPF_NOBLOCK = &H2     '  CBR_BLOCK will not work


Statement:
Public Const XTYPF_NODATA = &H4     '  DDE_FDEFERUPD


Statement:
Public Const XTYPF_ACKREQ = &H8     '  DDE_FACKREQ


Statement:
Public Const XCLASS_NOTIFICATION = &H8000


Statement:
Public Const XTYP_ERROR = (&H0 Or XCLASS_NOTIFICATION Or XTYPF_NOBLOCK)


Statement:
Public Const XTYP_ADVDATA = (&H10 Or XCLASS_FLAGS)


Statement:
Public Const XTYP_ADVREQ = (&H20 Or XCLASS_DATA Or XTYPF_NOBLOCK)


Statement:
Public Const XTYP_ADVSTART = (&H30 Or XCLASS_BOOL)


Statement:
Public Const XTYP_ADVSTOP = (&H40 Or XCLASS_NOTIFICATION)


Statement:
Public Const XTYP_EXECUTE = (&H50 Or XCLASS_FLAGS)


Statement:
Public Const XTYP_CONNECT = (&H60 Or XCLASS_BOOL Or XTYPF_NOBLOCK)


Statement:
Public Const XTYP_CONNECT_CONFIRM = (&H70 Or XCLASS_NOTIFICATION Or XTYPF_NOBLOCK)


Statement:
Public Const XTYP_XACT_COMPLETE = (&H80 Or XCLASS_NOTIFICATION)


Statement:
Public Const XTYP_POKE = (&H90 Or XCLASS_FLAGS)


Statement:
Public Const XTYP_REGISTER = (&HA0 Or XCLASS_NOTIFICATION Or XTYPF_NOBLOCK)


Statement:
Public Const XTYP_REQUEST = (&HB0 Or XCLASS_DATA)


Statement:
Public Const XTYP_DISCONNECT = (&HC0 Or XCLASS_NOTIFICATION Or XTYPF_NOBLOCK)


Statement:
Public Const XTYP_UNREGISTER = (&HD0 Or XCLASS_NOTIFICATION Or XTYPF_NOBLOCK)


Statement:
Public Const XTYP_WILDCONNECT = (&HE0 Or XCLASS_DATA Or XTYPF_NOBLOCK)


Statement:
Public Const XTYP_SHIFT = 4  '  shift to turn XTYP_ into an index


Statement:
Public Const SZDDESYS_ITEM_TOPICS = "Topics"


Statement:
Public Const SZDDESYS_ITEM_SYSITEMS = "SysItems"


Statement:
Public Const SZDDESYS_ITEM_RTNMSG = "ReturnMessage"


Statement:
Public Const SZDDESYS_ITEM_STATUS = "Status"


Statement:
Public Const SZDDESYS_ITEM_FORMATS = "Formats"


Statement:
Public Const SZDDESYS_ITEM_HELP = "Help"


Statement:
Public Const SZDDE_ITEM_ITEMLIST = "TopicItemList"


Statement:
Public Const CBF_FAIL_SELFCONNECTIONS = &H1000


Statement:
Public Const CBF_FAIL_CONNECTIONS = &H2000


Statement:
Public Const CBF_FAIL_REQUESTS = &H20000


Statement:
Public Const CBF_FAIL_ALLSVRXACTIONS = &H3F000


Statement:
Public Const CBF_SKIP_CONNECT_CONFIRMS = &H40000


Statement:
Public Const CBF_SKIP_REGISTRATIONS = &H80000


Statement:
Public Const CBF_SKIP_UNREGISTRATIONS = &H100000


Statement:
Public Const CBF_SKIP_DISCONNECTS = &H200000


Statement:
Public Const CBF_SKIP_ALLNOTIFICATIONS = &H3C0000


Statement:
Declare Function DdeUninitialize Lib "user32" Alias "DdeUninitialize" (ByVal idInst As Long) As Long


Statement:
Declare Function DdeConnectList Lib "user32" Alias "DdeConnectList" (ByVal idInst As Long, ByVal hszService As Long, ByVal hszTopic As Long, ByVal hConvList As Long, pCC As CONVCONTEXT) As Long


Statement:
Declare Function DdeQueryNextServer Lib "user32" Alias "DdeQueryNextServer" (ByVal hConvList As Long, ByVal hConvPrev As Long) As Long


Statement:
Declare Function DdeDisconnectList Lib "user32" Alias "DdeDisconnectList" (ByVal hConvList As Long) As Long


Statement:
Declare Function DdeConnect Lib "user32" Alias "DdeConnect" (ByVal idInst As Long, ByVal hszService As Long, ByVal hszTopic As Long, pCC As CONVCONTEXT) As Long


Statement:
Declare Function DdeDisconnect Lib "user32" Alias "DdeDisconnect" (ByVal hConv As Long) As Long


Statement:
Declare Function DdeReconnect Lib "user32" Alias "DdeReconnect" (ByVal hConv As Long) As Long


Statement:
Declare Function DdeQueryConvInfo Lib "user32" Alias "DdeQueryConvInfo" (ByVal hConv As Long, ByVal idTransaction As Long, pConvInfo As CONVINFO) As Long


Statement:
Declare Function DdeSetUserHandle Lib "user32" Alias "DdeSetUserHandle" (ByVal hConv As Long, ByVal id As Long, ByVal hUser As Long) As Long


Statement:
Declare Function DdeAbandonTransaction Lib "user32" Alias "DdeAbandonTransaction" (ByVal idInst As Long, ByVal hConv As Long, ByVal idTransaction As Long) As Long


Statement:
Declare Function DdePostAdvise Lib "user32" Alias "DdePostAdvise" (ByVal idInst As Long, ByVal hszTopic As Long, ByVal hszItem As Long) As Long


Statement:
Declare Function DdeEnableCallback Lib "user32" Alias "DdeEnableCallback" (ByVal idInst As Long, ByVal hConv As Long, ByVal wCmd As Long) As Long


Statement:
Declare Function DdeImpersonateClient Lib "user32" Alias "DdeImpersonateClient" (ByVal hConv As Long) As Long


Statement:
Public Const EC_ENABLEONE = ST_BLOCKNEXT


Statement:
Declare Function DdeNameService Lib "user32" Alias "DdeNameService" (ByVal idInst As Long, ByVal hsz1 As Long, ByVal hsz2 As Long, ByVal afCmd As Long) As Long


Statement:
Declare Function DdeClientTransaction Lib "user32" Alias "DdeClientTransaction" (pData As Byte, ByVal cbData As Long, ByVal hConv As Long, ByVal hszItem As Long, ByVal wFmt As Long, ByVal wType As Long, ByVal dwTimeout As Long, pdwResult As Long) As Long


Statement:
Declare Function DdeCreateDataHandle Lib "user32" Alias "DdeCreateDataHandle" (ByVal idInst As Long, pSrc As Byte, ByVal cb As Long, ByVal cbOff As Long, ByVal hszItem As Long, ByVal wFmt As Long, ByVal afCmd As Long) As Long


Statement:
Declare Function DdeAddData Lib "user32" Alias "DdeAddDataA" (ByVal hData As Long, pSrc As Byte, ByVal cb As Long, ByVal cbOff As Long) As Long


Statement:
Declare Function DdeGetData Lib "user32" Alias "DdeGetDataA" (ByVal hData As Long, pDst As Byte, ByVal cbMax As Long, ByVal cbOff As Long) As Long


Statement:
Declare Function DdeAccessData Lib "user32" Alias "DdeAccessDataA" (ByVal hData As Long, pcbDataSize As Long) As Long


Statement:
Declare Function DdeUnaccessData Lib "user32" Alias "DdeUnaccessDataA" (ByVal hData As Long) As Long


Statement:
Declare Function DdeFreeDataHandle Lib "user32" Alias "DdeFreeDataHandle" (ByVal hData As Long) As Long


Statement:
Declare Function DdeGetLastError Lib "user32" Alias "DdeGetLastError" (ByVal idInst As Long) As Long


Statement:
Public Const DMLERR_NO_ERROR = 0                           '  must be 0


Statement:
Public Const DMLERR_ADVACKTIMEOUT = &H4000


Statement:
Public Const DMLERR_DATAACKTIMEOUT = &H4002


Statement:
Public Const DMLERR_DLL_NOT_INITIALIZED = &H4003


Statement:
Public Const DMLERR_EXECACKTIMEOUT = &H4005


Statement:
Public Const DMLERR_INVALIDPARAMETER = &H4006


Statement:
Public Const DMLERR_MEMORY_ERROR = &H4008


Statement:
Public Const DMLERR_NOTPROCESSED = &H4009


Statement:
Public Const DMLERR_NO_CONV_ESTABLISHED = &H400A


Statement:
Public Const DMLERR_POKEACKTIMEOUT = &H400B


Statement:
Public Const DMLERR_POSTMSG_FAILED = &H400C


Statement:
Public Const DMLERR_SERVER_DIED = &H400E


Statement:
Public Const DMLERR_UNADVACKTIMEOUT = &H4010


Statement:
Public Const DMLERR_UNFOUND_QUEUE_ID = &H4011


Statement:
Declare Function DdeCreateStringHandle Lib "user32" Alias "DdeCreateStringHandleA" (ByVal idInst As Long, ByVal psz As String, ByVal iCodePage As Long) As Long


Statement:
Declare Function DdeQueryString Lib "user32" Alias "DdeQueryStringA" (ByVal idInst As Long, ByVal hsz As Long, ByVal psz As String, ByVal cchMax As Long, ByVal iCodePage As Long) As Long


Statement:
Declare Function DdeFreeStringHandle Lib "user32" Alias "DdeFreeStringHandle" (ByVal idInst As Long, ByVal hsz As Long) As Long


Statement:
Declare Function DdeKeepStringHandle Lib "user32" Alias "DdeKeepStringHandle" (ByVal idInst As Long, ByVal hsz As Long) As Long


Statement:
Declare Function DdeCmpStringHandles Lib "user32" Alias "DdeCmpStringHandles" (ByVal hsz1 As Long, ByVal hsz2 As Long) As Long


Statement:
Type DDEML_MSG_HOOK_DATA    '  new for NT
        uiLo As Long  '  unpacked lo and hi parts of lParam
        uiHi As Long
        cbData As Long   '  amount of data in message, if any. May be > than 32 bytes.
        Data(8) As Long  '  data peeking by DDESPY is limited to 32 bytes.
End Type


Statement:
Type MONMSGSTRUCT
        cb As Long
        hwndTo As Long
        dwTime As Long
        htask As Long
        wMsg As Long
        wParam As Long
        lParam As Long
        dmhd As DDEML_MSG_HOOK_DATA       '  new for NT
End Type


Statement:
Type MONCBSTRUCT
        cb As Long
        dwTime As Long
        htask As Long
        dwRet As Long
        wType As Long
        wFmt As Long
        hConv As Long
        hsz1 As Long
        hsz2 As Long
        hData As Long
        dwData1 As Long
        dwData2 As Long
        cc As CONVCONTEXT                 '  new for NT for XTYP_CONNECT callbacks
        cbData As Long                  '  new for NT for data peeking
        Data(8) As Long                 '  new for NT for data peeking
End Type


Statement:
Type MONHSZSTRUCT
        cb As Long
        fsAction As Boolean '  MH_ value
        dwTime As Long
        hsz As Long
        htask As Long
        str As Byte
End Type


Statement:
Type MONERRSTRUCT
        cb As Long
        wLastError As Long
        dwTime As Long
        htask As Long
End Type


Statement:
Type MONLINKSTRUCT
        cb As Long
        dwTime As Long
        htask As Long
        fEstablished As Boolean
        fNoData As Boolean
        hszSvc As Long
        hszTopic As Long
        hszItem As Long
        wFmt As Long
        fServer As Boolean
        hConvServer As Long
        hConvClient As Long
End Type


Statement:
Type MONCONVSTRUCT
        cb As Long
        fConnect As Boolean
        dwTime As Long
        htask As Long
        hszSvc As Long
        hszTopic As Long
        hConvClient As Long        '  Globally unique value != apps local hConv
        hConvServer As Long        '  Globally unique value != apps local hConv
End Type


Statement:
Public Const XTYP_MONITOR = (&HF0 Or XCLASS_NOTIFICATION Or XTYPF_NOBLOCK)


Statement:
Public Const ERROR_INVALID_FUNCTION = 1 '  dderror


Statement:
Public Const ERROR_TOO_MANY_OPEN_FILES = 4&


Statement:
Public Const ERROR_NOT_ENOUGH_MEMORY = 8 '  dderror


Statement:
Public Const ERROR_BAD_ENVIRONMENT = 10&


Statement:
Public Const ERROR_CURRENT_DIRECTORY = 16&


Statement:
Public Const ERROR_NOT_SAME_DEVICE = 17&


Statement:
Public Const ERROR_SECTOR_NOT_FOUND = 27&


Statement:
Public Const ERROR_SHARING_VIOLATION = 32&


Statement:
Public Const ERROR_SHARING_BUFFER_EXCEEDED = 36&


Statement:
Public Const ERROR_HANDLE_DISK_FULL = 39&


Statement:
Public Const ERROR_DEV_NOT_EXIST = 55 '  dderror


Statement:
Public Const ERROR_PRINT_CANCELLED = 63&


Statement:
Public Const ERROR_NETNAME_DELETED = 64&


Statement:
Public Const ERROR_NETWORK_ACCESS_DENIED = 65&


Statement:
Public Const ERROR_OUT_OF_STRUCTURES = 84&


Statement:
Public Const ERROR_ALREADY_ASSIGNED = 85&


Statement:
Public Const ERROR_INVALID_PASSWORD = 86&


Statement:
Public Const ERROR_INVALID_PARAMETER = 87 '  dderror


Statement:
Public Const ERROR_NET_WRITE_FAULT = 88&


Statement:
Public Const ERROR_TOO_MANY_SEMAPHORES = 100&


Statement:
Public Const ERROR_EXCL_SEM_ALREADY_OWNED = 101&


Statement:
Public Const ERROR_TOO_MANY_SEM_REQUESTS = 103&


Statement:
Public Const ERROR_INVALID_AT_INTERRUPT_TIME = 104&


Statement:
Public Const ERROR_SEM_OWNER_DIED = 105&


Statement:
Public Const ERROR_SEM_USER_LIMIT = 106&


Statement:
Public Const ERROR_BUFFER_OVERFLOW = 111&


Statement:
Public Const ERROR_NO_MORE_SEARCH_HANDLES = 113&


Statement:
Public Const ERROR_INVALID_TARGET_HANDLE = 114&


Statement:
Public Const ERROR_INVALID_CATEGORY = 117&


Statement:
Public Const ERROR_INVALID_VERIFY_SWITCH = 118&


Statement:
Public Const ERROR_BAD_DRIVER_LEVEL = 119&


Statement:
Public Const ERROR_CALL_NOT_IMPLEMENTED = 120&


Statement:
Public Const ERROR_INSUFFICIENT_BUFFER = 122 '  dderror


Statement:
Public Const ERROR_NO_VOLUME_LABEL = 125&


Statement:
Public Const ERROR_PROC_NOT_FOUND = 127&


Statement:
Public Const ERROR_WAIT_NO_CHILDREN = 128&


Statement:
Public Const ERROR_CHILD_NOT_COMPLETE = 129&


Statement:
Public Const ERROR_DIRECT_ACCESS_HANDLE = 130&


Statement:
Public Const ERROR_SEEK_ON_DEVICE = 132&


Statement:
Public Const ERROR_IS_JOIN_TARGET = 133&


Statement:
Public Const ERROR_SUBST_TO_SUBST = 139&


Statement:
Public Const ERROR_IS_SUBST_TARGET = 149&


Statement:
Public Const ERROR_INVALID_EVENT_COUNT = 151&


Statement:
Public Const ERROR_TOO_MANY_MUXWAITERS = 152&


Statement:
Public Const ERROR_INVALID_LIST_FORMAT = 153&


Statement:
Public Const ERROR_LABEL_TOO_LONG = 154&


Statement:
Public Const ERROR_SIGNAL_REFUSED = 156&


Statement:
Public Const ERROR_BAD_THREADID_ADDR = 159&


Statement:
Public Const ERROR_SIGNAL_PENDING = 162&


Statement:
Public Const ERROR_MAX_THRDS_REACHED = 164&


Statement:
Public Const ERROR_CANCEL_VIOLATION = 173&


Statement:
Public Const ERROR_ATOMIC_LOCKS_NOT_SUPPORTED = 174&


Statement:
Public Const ERROR_INVALID_SEGMENT_NUMBER = 180&


Statement:
Public Const ERROR_INVALID_ORDINAL = 182&


Statement:
Public Const ERROR_ALREADY_EXISTS = 183&


Statement:
Public Const ERROR_INVALID_FLAG_NUMBER = 186&


Statement:
Public Const ERROR_INVALID_STARTING_CODESEG = 188&


Statement:
Public Const ERROR_INVALID_STACKSEG = 189&


Statement:
Public Const ERROR_INVALID_MODULETYPE = 190&


Statement:
Public Const ERROR_INVALID_EXE_SIGNATURE = 191&


Statement:
Public Const ERROR_EXE_MARKED_INVALID = 192&


Statement:
Public Const ERROR_BAD_EXE_FORMAT = 193&


Statement:
Public Const ERROR_ITERATED_DATA_EXCEEDS_64k = 194&


Statement:
Public Const ERROR_INVALID_MINALLOCSIZE = 195&


Statement:
Public Const ERROR_DYNLINK_FROM_INVALID_RING = 196&


Statement:
Public Const ERROR_IOPL_NOT_ENABLED = 197&


Statement:
Public Const ERROR_INVALID_SEGDPL = 198&


Statement:
Public Const ERROR_AUTODATASEG_EXCEEDS_64k = 199&


Statement:
Public Const ERROR_RING2SEG_MUST_BE_MOVABLE = 200&


Statement:
Public Const ERROR_RELOC_CHAIN_XEEDS_SEGLIM = 201&


Statement:
Public Const ERROR_INFLOOP_IN_RELOC_CHAIN = 202&


Statement:
Public Const ERROR_ENVVAR_NOT_FOUND = 203&


Statement:
Public Const ERROR_NO_SIGNAL_SENT = 205&


Statement:
Public Const ERROR_FILENAME_EXCED_RANGE = 206&


Statement:
Public Const ERROR_RING2_STACK_IN_USE = 207&


Statement:
Public Const ERROR_META_EXPANSION_TOO_LONG = 208&


Statement:
Public Const ERROR_INVALID_SIGNAL_NUMBER = 209&


Statement:
Public Const ERROR_THREAD_1_INACTIVE = 210&


Statement:
Public Const ERROR_TOO_MANY_MODULES = 214&


Statement:
Public Const ERROR_NESTING_NOT_ALLOWED = 215&


Statement:
Public Const ERROR_PIPE_NOT_CONNECTED = 233&


Statement:
Public Const ERROR_MORE_DATA = 234 '  dderror


Statement:
Public Const ERROR_VC_DISCONNECTED = 240&


Statement:
Public Const ERROR_INVALID_EA_NAME = 254&


Statement:
Public Const ERROR_EA_LIST_INCONSISTENT = 255&


Statement:
Public Const ERROR_EA_FILE_CORRUPT = 276&


Statement:
Public Const ERROR_INVALID_EA_HANDLE = 278&


Statement:
Public Const ERROR_EAS_NOT_SUPPORTED = 282&


Statement:
Public Const ERROR_TOO_MANY_POSTS = 298&


Statement:
Public Const ERROR_MR_MID_NOT_FOUND = 317&


Statement:
Public Const ERROR_INVALID_ADDRESS = 487&


Statement:
Public Const ERROR_ARITHMETIC_OVERFLOW = 534&


Statement:
Public Const ERROR_PIPE_CONNECTED = 535&


Statement:
Public Const ERROR_PIPE_LISTENING = 536&


Statement:
Public Const ERROR_EA_ACCESS_DENIED = 994&


Statement:
Public Const ERROR_OPERATION_ABORTED = 995&


Statement:
Public Const ERROR_IO_PENDING = 997 '  dderror


Statement:
Public Const ERROR_STACK_OVERFLOW = 1001&


Statement:
Public Const ERROR_INVALID_MESSAGE = 1002&


Statement:
Public Const ERROR_CAN_NOT_COMPLETE = 1003&


Statement:
Public Const ERROR_INVALID_FLAGS = 1004&


Statement:
Public Const ERROR_UNRECOGNIZED_VOLUME = 1005&


Statement:
Public Const ERROR_FULLSCREEN_MODE = 1007&


Statement:
Public Const ERROR_REGISTRY_RECOVERED = 1014&


Statement:
Public Const ERROR_REGISTRY_CORRUPT = 1015&


Statement:
Public Const ERROR_REGISTRY_IO_FAILED = 1016&


Statement:
Public Const ERROR_NOT_REGISTRY_FILE = 1017&


Statement:
Public Const ERROR_KEY_HAS_CHILDREN = 1020&


Statement:
Public Const ERROR_CHILD_MUST_BE_VOLATILE = 1021&


Statement:
Public Const ERROR_NOTIFY_ENUM_DIR = 1022&


Statement:
Public Const ERROR_DEPENDENT_SERVICES_RUNNING = 1051&


Statement:
Public Const ERROR_INVALID_SERVICE_CONTROL = 1052&


Statement:
Public Const ERROR_SERVICE_REQUEST_TIMEOUT = 1053&


Statement:
Public Const ERROR_SERVICE_NO_THREAD = 1054&


Statement:
Public Const ERROR_SERVICE_DATABASE_LOCKED = 1055&


Statement:
Public Const ERROR_SERVICE_ALREADY_RUNNING = 1056&


Statement:
Public Const ERROR_INVALID_SERVICE_ACCOUNT = 1057&


Statement:
Public Const ERROR_SERVICE_DISABLED = 1058&


Statement:
Public Const ERROR_CIRCULAR_DEPENDENCY = 1059&


Statement:
Public Const ERROR_SERVICE_DOES_NOT_EXIST = 1060&


Statement:
Public Const ERROR_SERVICE_CANNOT_ACCEPT_CTRL = 1061&


Statement:
Public Const ERROR_SERVICE_NOT_ACTIVE = 1062&


Statement:
Public Const ERROR_FAILED_SERVICE_CONTROLLER_CONNECT = 1063&


Statement:
Public Const ERROR_EXCEPTION_IN_SERVICE = 1064&


Statement:
Public Const ERROR_DATABASE_DOES_NOT_EXIST = 1065&


Statement:
Public Const ERROR_SERVICE_SPECIFIC_ERROR = 1066&


Statement:
Public Const ERROR_PROCESS_ABORTED = 1067&


Statement:
Public Const ERROR_SERVICE_DEPENDENCY_FAIL = 1068&


Statement:
Public Const ERROR_SERVICE_LOGON_FAILED = 1069&


Statement:
Public Const ERROR_SERVICE_START_HANG = 1070&


Statement:
Public Const ERROR_INVALID_SERVICE_LOCK = 1071&


Statement:
Public Const ERROR_SERVICE_MARKED_FOR_DELETE = 1072&


Statement:
Public Const ERROR_SERVICE_EXISTS = 1073&


Statement:
Public Const ERROR_ALREADY_RUNNING_LKG = 1074&


Statement:
Public Const ERROR_SERVICE_DEPENDENCY_DELETED = 1075&


Statement:
Public Const ERROR_BOOT_ALREADY_ACCEPTED = 1076&


Statement:
Public Const ERROR_SERVICE_NEVER_STARTED = 1077&


Statement:
Public Const ERROR_DUPLICATE_SERVICE_NAME = 1078&


Statement:
Public Const ERROR_FILEMARK_DETECTED = 1101&


Statement:
Public Const ERROR_BEGINNING_OF_MEDIA = 1102&


Statement:
Public Const ERROR_SETMARK_DETECTED = 1103&


Statement:
Public Const ERROR_NO_DATA_DETECTED = 1104&


Statement:
Public Const ERROR_PARTITION_FAILURE = 1105&


Statement:
Public Const ERROR_INVALID_BLOCK_LENGTH = 1106&


Statement:
Public Const ERROR_DEVICE_NOT_PARTITIONED = 1107&


Statement:
Public Const ERROR_UNABLE_TO_LOCK_MEDIA = 1108&


Statement:
Public Const ERROR_UNABLE_TO_UNLOAD_MEDIA = 1109&


Statement:
Public Const ERROR_MEDIA_CHANGED = 1110&


Statement:
Public Const ERROR_NO_MEDIA_IN_DRIVE = 1112&


Statement:
Public Const ERROR_NO_UNICODE_TRANSLATION = 1113&


Statement:
Public Const ERROR_DLL_INIT_FAILED = 1114&


Statement:
Public Const ERROR_SHUTDOWN_IN_PROGRESS = 1115&


Statement:
Public Const ERROR_NO_SHUTDOWN_IN_PROGRESS = 1116&


Statement:
Public Const ERROR_SERIAL_NO_DEVICE = 1118&


Statement:
Public Const ERROR_COUNTER_TIMEOUT = 1121&


Statement:
Public Const ERROR_FLOPPY_ID_MARK_NOT_FOUND = 1122&


Statement:
Public Const ERROR_FLOPPY_WRONG_CYLINDER = 1123&


Statement:
Public Const ERROR_FLOPPY_UNKNOWN_ERROR = 1124&


Statement:
Public Const ERROR_FLOPPY_BAD_REGISTERS = 1125&


Statement:
Public Const ERROR_DISK_RECALIBRATE_FAILED = 1126&


Statement:
Public Const ERROR_DISK_OPERATION_FAILED = 1127&


Statement:
Public Const ERROR_DISK_RESET_FAILED = 1128&


Statement:
Public Const ERROR_NOT_ENOUGH_SERVER_MEMORY = 1130&


Statement:
Public Const ERROR_POSSIBLE_DEADLOCK = 1131&


Statement:
Public Const ERROR_MAPPED_ALIGNMENT = 1132&


Statement:
Public Const ERROR_INVALID_PIXEL_FORMAT = 2000


Statement:
Public Const ERROR_INVALID_WINDOW_STYLE = 2002


Statement:
Public Const ERROR_METAFILE_NOT_SUPPORTED = 2003


Statement:
Public Const ERROR_TRANSFORM_NOT_SUPPORTED = 2004


Statement:
Public Const ERROR_CLIPPING_NOT_SUPPORTED = 2005


Statement:
Public Const ERROR_UNKNOWN_PRINT_MONITOR = 3000


Statement:
Public Const ERROR_PRINTER_DRIVER_IN_USE = 3001


Statement:
Public Const ERROR_SPOOL_FILE_NOT_FOUND = 3002


Statement:
Public Const ERROR_SPL_NO_STARTDOC = 3003


Statement:
Public Const ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED = 3005


Statement:
Public Const ERROR_PRINT_MONITOR_ALREADY_INSTALLED = 3006


Statement:
Public Const ERROR_CAN_NOT_DEL_LOCAL_WINS = 4001


Statement:
Public Const ERROR_REC_NON_EXISTENT = 4005


Statement:
Public Const ERROR_RPL_NOT_ALLOWED = 4006


Statement:
Public Const FACILITY_NT_BIT = &H10000000


Statement:
Public Const E_ACCESSDENIED = &H80070005


Statement:
Public Const CO_E_INIT_SHARED_ALLOCATOR = &H80004007


Statement:
Public Const CO_E_INIT_MEMORY_ALLOCATOR = &H80004008


Statement:
Public Const CO_E_INIT_CLASS_CACHE = &H80004009


Statement:
Public Const CO_E_INIT_RPC_CHANNEL = &H8000400A


Statement:
Public Const CO_E_INIT_TLS_SET_CHANNEL_CONTROL = &H8000400B


Statement:
Public Const CO_E_INIT_TLS_CHANNEL_CONTROL = &H8000400C


Statement:
Public Const CO_E_INIT_UNACCEPTED_USER_ALLOCATOR = &H8000400D


Statement:
Public Const CO_E_INIT_SCM_MUTEX_EXISTS = &H8000400E


Statement:
Public Const CO_E_INIT_SCM_FILE_MAPPING_EXISTS = &H8000400F


Statement:
Public Const CO_E_INIT_SCM_MAP_VIEW_OF_FILE = &H80004010


Statement:
Public Const CO_E_INIT_SCM_EXEC_FAILURE = &H80004011


Statement:
Public Const CO_E_INIT_ONLY_SINGLE_THREADED = &H80004012


Statement:
Public Const OLE_E_ENUM_NOMORE = &H80040002


Statement:
Public Const OLE_E_ADVISENOTSUPPORTED = &H80040003


Statement:
Public Const OLE_E_NOCONNECTION = &H80040004


Statement:
Public Const OLE_E_NOTRUNNING = &H80040005


Statement:
Public Const OLE_E_CLASSDIFF = &H80040008


Statement:
Public Const OLE_E_CANT_GETMONIKER = &H80040009


Statement:
Public Const OLE_E_CANT_BINDTOSOURCE = &H8004000A


Statement:
Public Const OLE_E_PROMPTSAVECANCELLED = &H8004000C


Statement:
Public Const OLE_E_INVALIDRECT = &H8004000D


Statement:
Public Const OLE_E_WRONGCOMPOBJ = &H8004000E


Statement:
Public Const OLE_E_INVALIDHWND = &H8004000F


Statement:
Public Const OLE_E_NOT_INPLACEACTIVE = &H80040010


Statement:
Public Const OLE_E_CANTCONVERT = &H80040011


Statement:
Public Const OLE_E_NOSTORAGE = &H80040012


Statement:
Public Const DV_E_FORMATETC = &H80040064


Statement:
Public Const DV_E_DVTARGETDEVICE = &H80040065


Statement:
Public Const DV_E_STGMEDIUM = &H80040066


Statement:
Public Const DV_E_CLIPFORMAT = &H8004006A


Statement:
Public Const DV_E_DVTARGETDEVICE_SIZE = &H8004006C


Statement:
Public Const DV_E_NOIVIEWOBJECT = &H8004006D


Statement:
Public Const DRAGDROP_E_FIRST = &H80040100


Statement:
Public Const DRAGDROP_E_LAST = &H8004010F


Statement:
Public Const DRAGDROP_E_NOTREGISTERED = &H80040100


Statement:
Public Const DRAGDROP_E_ALREADYREGISTERED = &H80040101


Statement:
Public Const DRAGDROP_E_INVALIDHWND = &H80040102


Statement:
Public Const CLASSFACTORY_E_FIRST = &H80040110


Statement:
Public Const CLASSFACTORY_E_LAST = &H8004011F


Statement:
Public Const CLASSFACTORY_S_FIRST = &H40110


Statement:
Public Const CLASSFACTORY_S_LAST = &H4011F


Statement:
Public Const CLASS_E_NOAGGREGATION = &H80040110


Statement:
Public Const CLASS_E_CLASSNOTAVAILABLE = &H80040111


Statement:
Public Const MARSHAL_E_FIRST = &H80040120


Statement:
Public Const MARSHAL_E_LAST = &H8004012F


Statement:
Public Const REGDB_E_READREGDB = &H80040150


Statement:
Public Const REGDB_E_WRITEREGDB = &H80040151


Statement:
Public Const REGDB_E_KEYMISSING = &H80040152


Statement:
Public Const REGDB_E_INVALIDVALUE = &H80040153


Statement:
Public Const REGDB_E_CLASSNOTREG = &H80040154


Statement:
Public Const REGDB_E_IIDNOTREG = &H80040155


Statement:
Public Const CACHE_E_NOCACHE_UPDATED = &H80040170


Statement:
Public Const OLEOBJ_E_FIRST = &H80040180


Statement:
Public Const OLEOBJ_E_NOVERBS = &H80040180


Statement:
Public Const OLEOBJ_E_INVALIDVERB = &H80040181


Statement:
Public Const CLIENTSITE_E_FIRST = &H80040190


Statement:
Public Const CLIENTSITE_E_LAST = &H8004019F


Statement:
Public Const CLIENTSITE_S_FIRST = &H40190


Statement:
Public Const CLIENTSITE_S_LAST = &H4019F


Statement:
Public Const INPLACE_E_NOTUNDOABLE = &H800401A0


Statement:
Public Const INPLACE_E_NOTOOLSPACE = &H800401A1


Statement:
Public Const INPLACE_E_FIRST = &H800401A0


Statement:
Public Const INPLACE_E_LAST = &H800401AF


Statement:
Public Const CONVERT10_E_FIRST = &H800401C0


Statement:
Public Const CONVERT10_E_LAST = &H800401CF


Statement:
Public Const CONVERT10_S_FIRST = &H401C0


Statement:
Public Const CONVERT10_E_OLESTREAM_GET = &H800401C0


Statement:
Public Const CONVERT10_E_OLESTREAM_PUT = &H800401C1


Statement:
Public Const CONVERT10_E_OLESTREAM_FMT = &H800401C2


Statement:
Public Const CONVERT10_E_OLESTREAM_BITMAP_TO_DIB = &H800401C3


Statement:
Public Const CONVERT10_E_STG_FMT = &H800401C4


Statement:
Public Const CONVERT10_E_STG_NO_STD_STREAM = &H800401C5


Statement:
Public Const CONVERT10_E_STG_DIB_TO_BITMAP = &H800401C6


Statement:
Public Const CLIPBRD_E_FIRST = &H800401D0


Statement:
Public Const CLIPBRD_E_LAST = &H800401DF


Statement:
Public Const CLIPBRD_E_CANT_OPEN = &H800401D0


Statement:
Public Const CLIPBRD_E_CANT_EMPTY = &H800401D1


Statement:
Public Const CLIPBRD_E_CANT_SET = &H800401D2


Statement:
Public Const CLIPBRD_E_BAD_DATA = &H800401D3


Statement:
Public Const CLIPBRD_E_CANT_CLOSE = &H800401D4


Statement:
Public Const MK_E_CONNECTMANUALLY = &H800401E0


Statement:
Public Const MK_E_EXCEEDEDDEADLINE = &H800401E1


Statement:
Public Const MK_E_NEEDGENERIC = &H800401E2


Statement:
Public Const MK_E_UNAVAILABLE = &H800401E3


Statement:
Public Const MK_E_INVALIDEXTENSION = &H800401E6


Statement:
Public Const MK_E_INTERMEDIATEINTERFACENOTSUPPORTED = &H800401E7


Statement:
Public Const MK_E_NOTBINDABLE = &H800401E8


Statement:
Public Const MK_E_CANTOPENFILE = &H800401EA


Statement:
Public Const MK_E_MUSTBOTHERUSER = &H800401EB


Statement:
Public Const MK_E_NOINVERSE = &H800401EC


Statement:
Public Const MK_E_NOSTORAGE = &H800401ED


Statement:
Public Const MK_E_ENUMERATION_FAILED = &H800401EF


Statement:
Public Const CO_E_NOTINITIALIZED = &H800401F0


Statement:
Public Const CO_E_ALREADYINITIALIZED = &H800401F1


Statement:
Public Const CO_E_CANTDETERMINECLASS = &H800401F2


Statement:
Public Const CO_E_CLASSSTRING = &H800401F3


Statement:
Public Const CO_E_IIDSTRING = &H800401F4


Statement:
Public Const CO_E_APPNOTFOUND = &H800401F5


Statement:
Public Const CO_E_APPSINGLEUSE = &H800401F6


Statement:
Public Const CO_E_ERRORINAPP = &H800401F7


Statement:
Public Const CO_E_DLLNOTFOUND = &H800401F8


Statement:
Public Const CO_E_ERRORINDLL = &H800401F9


Statement:
Public Const CO_E_WRONGOSFORAPP = &H800401FA


Statement:
Public Const CO_E_OBJNOTREG = &H800401FB


Statement:
Public Const CO_E_OBJNOTCONNECTED = &H800401FD


Statement:
Public Const CO_E_APPDIDNTREG = &H800401FE


Statement:
Public Const OLE_S_MAC_CLIPFORMAT = &H40002


Statement:
Public Const DRAGDROP_S_CANCEL = &H40101


Statement:
Public Const DRAGDROP_S_USEDEFAULTCURSORS = &H40102


Statement:
Public Const DATA_S_SAMEFORMATETC = &H40130


Statement:
Public Const VIEW_S_ALREADY_FROZEN = &H40140


Statement:
Public Const CACHE_S_FORMATETC_NOTSUPPORTED = &H40170


Statement:
Public Const CACHE_S_SAMECACHE = &H40171


Statement:
Public Const CACHE_S_SOMECACHES_NOTUPDATED = &H40172


Statement:
Public Const OLEOBJ_S_INVALIDVERB = &H40180


Statement:
Public Const OLEOBJ_S_CANNOT_DOVERB_NOW = &H40181


Statement:
Public Const OLEOBJ_S_INVALIDHWND = &H40182


Statement:
Public Const INPLACE_S_TRUNCATED = &H401A0


Statement:
Public Const CONVERT10_S_NO_PRESENTATION = &H401C0


Statement:
Public Const MK_S_REDUCED_TO_SELF = &H401E2


Statement:
Public Const MK_S_MONIKERALREADYREGISTERED = &H401E7


Statement:
Public Const CO_E_CLASS_CREATE_FAILED = &H80080001


Statement:
Public Const CO_E_SCM_ERROR = &H80080002


Statement:
Public Const CO_E_SCM_RPC_FAILURE = &H80080003


Statement:
Public Const CO_E_SERVER_EXEC_FAILURE = &H80080005


Statement:
Public Const CO_E_OBJSRV_RPC_FAILURE = &H80080006


Statement:
Public Const MK_E_NO_NORMALIZED = &H80080007


Statement:
Public Const CO_E_SERVER_STOPPING = &H80080008


Statement:
Public Const MEM_E_INVALID_ROOT = &H80080009


Statement:
Public Const MEM_E_INVALID_LINK = &H80080010


Statement:
Public Const MEM_E_INVALID_SIZE = &H80080011


Statement:
Public Const DISP_E_UNKNOWNINTERFACE = &H80020001


Statement:
Public Const DISP_E_MEMBERNOTFOUND = &H80020003


Statement:
Public Const DISP_E_PARAMNOTFOUND = &H80020004


Statement:
Public Const DISP_E_TYPEMISMATCH = &H80020005


Statement:
Public Const DISP_E_UNKNOWNNAME = &H80020006


Statement:
Public Const DISP_E_NONAMEDARGS = &H80020007


Statement:
Public Const DISP_E_BADVARTYPE = &H80020008


Statement:
Public Const DISP_E_EXCEPTION = &H80020009


Statement:
Public Const DISP_E_OVERFLOW = &H8002000A


Statement:
Public Const DISP_E_BADINDEX = &H8002000B


Statement:
Public Const DISP_E_UNKNOWNLCID = &H8002000C


Statement:
Public Const DISP_E_ARRAYISLOCKED = &H8002000D


Statement:
Public Const DISP_E_BADPARAMCOUNT = &H8002000E


Statement:
Public Const DISP_E_PARAMNOTOPTIONAL = &H8002000F


Statement:
Public Const DISP_E_BADCALLEE = &H80020010


Statement:
Public Const DISP_E_NOTACOLLECTION = &H80020011


Statement:
Public Const TYPE_E_BUFFERTOOSMALL = &H80028016


Statement:
Public Const TYPE_E_INVDATAREAD = &H80028018


Statement:
Public Const TYPE_E_UNSUPFORMAT = &H80028019


Statement:
Public Const TYPE_E_REGISTRYACCESS = &H8002801C


Statement:
Public Const TYPE_E_LIBNOTREGISTERED = &H8002801D


Statement:
Public Const TYPE_E_UNDEFINEDTYPE = &H80028027


Statement:
Public Const TYPE_E_QUALIFIEDNAMEDISALLOWED = &H80028028


Statement:
Public Const TYPE_E_INVALIDSTATE = &H80028029


Statement:
Public Const TYPE_E_WRONGTYPEKIND = &H8002802A


Statement:
Public Const TYPE_E_ELEMENTNOTFOUND = &H8002802B


Statement:
Public Const TYPE_E_AMBIGUOUSNAME = &H8002802C


Statement:
Public Const TYPE_E_NAMECONFLICT = &H8002802D


Statement:
Public Const TYPE_E_UNKNOWNLCID = &H8002802E


Statement:
Public Const TYPE_E_DLLFUNCTIONNOTFOUND = &H8002802F


Statement:
Public Const TYPE_E_BADMODULEKIND = &H800288BD


Statement:
Public Const TYPE_E_SIZETOOBIG = &H800288C5


Statement:
Public Const TYPE_E_DUPLICATEID = &H800288C6


Statement:
Public Const TYPE_E_INVALIDID = &H800288CF


Statement:
Public Const TYPE_E_TYPEMISMATCH = &H80028CA0


Statement:
Public Const TYPE_E_OUTOFBOUNDS = &H80028CA1


Statement:
Public Const TYPE_E_IOERROR = &H80028CA2


Statement:
Public Const TYPE_E_CANTCREATETMPFILE = &H80028CA3


Statement:
Public Const TYPE_E_CANTLOADLIBRARY = &H80029C4A


Statement:
Public Const TYPE_E_INCONSISTENTPROPFUNCS = &H80029C83


Statement:
Public Const TYPE_E_CIRCULARTYPE = &H80029C84


Statement:
Public Const STG_E_INVALIDFUNCTION = &H80030001


Statement:
Public Const STG_E_FILENOTFOUND = &H80030002


Statement:
Public Const STG_E_PATHNOTFOUND = &H80030003


Statement:
Public Const STG_E_TOOMANYOPENFILES = &H80030004


Statement:
Public Const STG_E_ACCESSDENIED = &H80030005


Statement:
Public Const STG_E_INVALIDHANDLE = &H80030006


Statement:
Public Const STG_E_INSUFFICIENTMEMORY = &H80030008


Statement:
Public Const STG_E_INVALIDPOINTER = &H80030009


Statement:
Public Const STG_E_NOMOREFILES = &H80030012


Statement:
Public Const STG_E_DISKISWRITEPROTECTED = &H80030013


Statement:
Public Const STG_E_SEEKERROR = &H80030019


Statement:
Public Const STG_E_WRITEFAULT = &H8003001D


Statement:
Public Const STG_E_READFAULT = &H8003001E


Statement:
Public Const STG_E_SHAREVIOLATION = &H80030020


Statement:
Public Const STG_E_LOCKVIOLATION = &H80030021


Statement:
Public Const STG_E_FILEALREADYEXISTS = &H80030050


Statement:
Public Const STG_E_INVALIDPARAMETER = &H80030057


Statement:
Public Const STG_E_MEDIUMFULL = &H80030070


Statement:
Public Const STG_E_ABNORMALAPIEXIT = &H800300FA


Statement:
Public Const STG_E_INVALIDHEADER = &H800300FB


Statement:
Public Const STG_E_INVALIDNAME = &H800300FC


Statement:
Public Const STG_E_UNIMPLEMENTEDFUNCTION = &H800300FE


Statement:
Public Const STG_E_INVALIDFLAG = &H800300FF


Statement:
Public Const STG_E_NOTCURRENT = &H80030101


Statement:
Public Const STG_E_REVERTED = &H80030102


Statement:
Public Const STG_E_CANTSAVE = &H80030103


Statement:
Public Const STG_E_OLDFORMAT = &H80030104


Statement:
Public Const STG_E_SHAREREQUIRED = &H80030106


Statement:
Public Const STG_E_NOTFILEBASEDSTORAGE = &H80030107


Statement:
Public Const STG_E_EXTANTMARSHALLINGS = &H80030108


Statement:
Public Const RPC_E_CALL_REJECTED = &H80010001


Statement:
Public Const RPC_E_CALL_CANCELED = &H80010002


Statement:
Public Const RPC_E_CANTPOST_INSENDCALL = &H80010003


Statement:
Public Const RPC_E_CANTCALLOUT_INASYNCCALL = &H80010004


Statement:
Public Const RPC_E_CANTCALLOUT_INEXTERNALCALL = &H80010005


Statement:
Public Const RPC_E_CONNECTION_TERMINATED = &H80010006


Statement:
Public Const RPC_E_SERVER_DIED = &H80010007


Statement:
Public Const RPC_E_CLIENT_DIED = &H80010008


Statement:
Public Const RPC_E_INVALID_DATAPACKET = &H80010009


Statement:
Public Const RPC_E_CANTTRANSMIT_CALL = &H8001000A


Statement:
Public Const RPC_E_CLIENT_CANTMARSHAL_DATA = &H8001000B


Statement:
Public Const RPC_E_CLIENT_CANTUNMARSHAL_DATA = &H8001000C


Statement:
Public Const RPC_E_SERVER_CANTMARSHAL_DATA = &H8001000D


Statement:
Public Const RPC_E_SERVER_CANTUNMARSHAL_DATA = &H8001000E


Statement:
Public Const RPC_E_INVALID_DATA = &H8001000F


Statement:
Public Const RPC_E_INVALID_PARAMETER = &H80010010


Statement:
Public Const RPC_E_CANTCALLOUT_AGAIN = &H80010011


Statement:
Public Const RPC_E_SERVER_DIED_DNE = &H80010012


Statement:
Public Const RPC_E_SYS_CALL_FAILED = &H80010100


Statement:
Public Const RPC_E_OUT_OF_RESOURCES = &H80010101


Statement:
Public Const RPC_E_ATTEMPTED_MULTITHREAD = &H80010102


Statement:
Public Const RPC_E_NOT_REGISTERED = &H80010103


Statement:
Public Const RPC_E_SERVERFAULT = &H80010105


Statement:
Public Const RPC_E_CHANGED_MODE = &H80010106


Statement:
Public Const RPC_E_INVALIDMETHOD = &H80010107


Statement:
Public Const RPC_E_DISCONNECTED = &H80010108


Statement:
Public Const RPC_E_SERVERCALL_RETRYLATER = &H8001010A


Statement:
Public Const RPC_E_SERVERCALL_REJECTED = &H8001010B


Statement:
Public Const RPC_E_INVALID_CALLDATA = &H8001010C


Statement:
Public Const RPC_E_CANTCALLOUT_ININPUTSYNCCALL = &H8001010D


Statement:
Public Const RPC_E_WRONG_THREAD = &H8001010E


Statement:
Public Const RPC_E_THREAD_NOT_INIT = &H8001010F


Statement:
Public Const RPC_E_UNEXPECTED = &H8001FFFF


Statement:
Public Const ERROR_NOT_CONNECTED = 2250&


Statement:
Public Const ERROR_DEVICE_IN_USE = 2404&


Statement:
Public Const ERROR_CONNECTION_UNAVAIL = 1201&


Statement:
Public Const ERROR_DEVICE_ALREADY_REMEMBERED = 1202&


Statement:
Public Const ERROR_NO_NET_OR_BAD_PATH = 1203&


Statement:
Public Const ERROR_CANNOT_OPEN_PROFILE = 1205&


Statement:
Public Const ERROR_NOT_CONTAINER = 1207&


Statement:
Public Const ERROR_EXTENDED_ERROR = 1208&


Statement:
Public Const ERROR_INVALID_GROUPNAME = 1209&


Statement:
Public Const ERROR_INVALID_COMPUTERNAME = 1210&


Statement:
Public Const ERROR_INVALID_EVENTNAME = 1211&


Statement:
Public Const ERROR_INVALID_DOMAINNAME = 1212&


Statement:
Public Const ERROR_INVALID_SERVICENAME = 1213&


Statement:
Public Const ERROR_INVALID_NETNAME = 1214&


Statement:
Public Const ERROR_INVALID_SHARENAME = 1215&


Statement:
Public Const ERROR_INVALID_PASSWORDNAME = 1216&


Statement:
Public Const ERROR_INVALID_MESSAGENAME = 1217&


Statement:
Public Const ERROR_INVALID_MESSAGEDEST = 1218&


Statement:
Public Const ERROR_SESSION_CREDENTIAL_CONFLICT = 1219&


Statement:
Public Const ERROR_REMOTE_SESSION_LIMIT_EXCEEDED = 1220&


Statement:
Public Const ERROR_DUP_DOMAINNAME = 1221&


Statement:
Public Const ERROR_NOT_ALL_ASSIGNED = 1300&


Statement:
Public Const ERROR_SOME_NOT_MAPPED = 1301&


Statement:
Public Const ERROR_NO_QUOTAS_FOR_ACCOUNT = 1302&


Statement:
Public Const ERROR_LOCAL_USER_SESSION_KEY = 1303&


Statement:
Public Const ERROR_NULL_LM_PASSWORD = 1304&


Statement:
Public Const ERROR_UNKNOWN_REVISION = 1305&


Statement:
Public Const ERROR_REVISION_MISMATCH = 1306&


Statement:
Public Const ERROR_INVALID_OWNER = 1307&


Statement:
Public Const ERROR_INVALID_PRIMARY_GROUP = 1308&


Statement:
Public Const ERROR_NO_IMPERSONATION_TOKEN = 1309&


Statement:
Public Const ERROR_CANT_DISABLE_MANDATORY = 1310&


Statement:
Public Const ERROR_NO_LOGON_SERVERS = 1311&


Statement:
Public Const ERROR_NO_SUCH_LOGON_SESSION = 1312&


Statement:
Public Const ERROR_NO_SUCH_PRIVILEGE = 1313&


Statement:
Public Const ERROR_PRIVILEGE_NOT_HELD = 1314&


Statement:
Public Const ERROR_INVALID_ACCOUNT_NAME = 1315&


Statement:
Public Const ERROR_NO_SUCH_GROUP = 1319&


Statement:
Public Const ERROR_MEMBER_IN_GROUP = 1320&


Statement:
Public Const ERROR_MEMBER_NOT_IN_GROUP = 1321&


Statement:
Public Const ERROR_WRONG_PASSWORD = 1323&


Statement:
Public Const ERROR_ILL_FORMED_PASSWORD = 1324&


Statement:
Public Const ERROR_PASSWORD_RESTRICTION = 1325&


Statement:
Public Const ERROR_LOGON_FAILURE = 1326&


Statement:
Public Const ERROR_ACCOUNT_RESTRICTION = 1327&


Statement:
Public Const ERROR_INVALID_LOGON_HOURS = 1328&


Statement:
Public Const ERROR_INVALID_WORKSTATION = 1329&


Statement:
Public Const ERROR_PASSWORD_EXPIRED = 1330&


Statement:
Public Const ERROR_ACCOUNT_DISABLED = 1331&


Statement:
Public Const ERROR_TOO_MANY_LUIDS_REQUESTED = 1333&


Statement:
Public Const ERROR_LUIDS_EXHAUSTED = 1334&


Statement:
Public Const ERROR_INVALID_SUB_AUTHORITY = 1335&


Statement:
Public Const ERROR_INVALID_SECURITY_DESCR = 1338&


Statement:
Public Const ERROR_BAD_INHERITANCE_ACL = 1340&


Statement:
Public Const ERROR_SERVER_DISABLED = 1341&


Statement:
Public Const ERROR_SERVER_NOT_DISABLED = 1342&


Statement:
Public Const ERROR_INVALID_ID_AUTHORITY = 1343&


Statement:
Public Const ERROR_ALLOTTED_SPACE_EXCEEDED = 1344&


Statement:
Public Const ERROR_INVALID_GROUP_ATTRIBUTES = 1345&


Statement:
Public Const ERROR_BAD_IMPERSONATION_LEVEL = 1346&


Statement:
Public Const ERROR_CANT_OPEN_ANONYMOUS = 1347&


Statement:
Public Const ERROR_BAD_VALIDATION_CLASS = 1348&


Statement:
Public Const ERROR_BAD_TOKEN_TYPE = 1349&


Statement:
Public Const ERROR_NO_SECURITY_ON_OBJECT = 1350&


Statement:
Public Const ERROR_CANT_ACCESS_DOMAIN_INFO = 1351&


Statement:
Public Const ERROR_INVALID_SERVER_STATE = 1352&


Statement:
Public Const ERROR_INVALID_DOMAIN_STATE = 1353&


Statement:
Public Const ERROR_INVALID_DOMAIN_ROLE = 1354&


Statement:
Public Const ERROR_NO_SUCH_DOMAIN = 1355&


Statement:
Public Const ERROR_DOMAIN_EXISTS = 1356&


Statement:
Public Const ERROR_DOMAIN_LIMIT_EXCEEDED = 1357&


Statement:
Public Const ERROR_INTERNAL_DB_CORRUPTION = 1358&


Statement:
Public Const ERROR_INTERNAL_ERROR = 1359&


Statement:
Public Const ERROR_GENERIC_NOT_MAPPED = 1360&


Statement:
Public Const ERROR_BAD_DESCRIPTOR_FORMAT = 1361&


Statement:
Public Const ERROR_NOT_LOGON_PROCESS = 1362&


Statement:
Public Const ERROR_LOGON_SESSION_EXISTS = 1363&


Statement:
Public Const ERROR_NO_SUCH_PACKAGE = 1364&


Statement:
Public Const ERROR_BAD_LOGON_SESSION_STATE = 1365&


Statement:
Public Const ERROR_LOGON_SESSION_COLLISION = 1366&


Statement:
Public Const ERROR_INVALID_LOGON_TYPE = 1367&


Statement:
Public Const ERROR_CANNOT_IMPERSONATE = 1368&


Statement:
Public Const ERROR_RXACT_INVALID_STATE = 1369&


Statement:
Public Const ERROR_RXACT_COMMIT_FAILURE = 1370&


Statement:
Public Const ERROR_SPECIAL_ACCOUNT = 1371&


Statement:
Public Const ERROR_SPECIAL_GROUP = 1372&


Statement:
Public Const ERROR_MEMBERS_PRIMARY_GROUP = 1374&


Statement:
Public Const ERROR_TOKEN_ALREADY_IN_USE = 1375&


Statement:
Public Const ERROR_NO_SUCH_ALIAS = 1376&


Statement:
Public Const ERROR_MEMBER_NOT_IN_ALIAS = 1377&


Statement:
Public Const ERROR_MEMBER_IN_ALIAS = 1378&


Statement:
Public Const ERROR_LOGON_NOT_GRANTED = 1380&


Statement:
Public Const ERROR_TOO_MANY_SECRETS = 1381&


Statement:
Public Const ERROR_SECRET_TOO_LONG = 1382&


Statement:
Public Const ERROR_INTERNAL_DB_ERROR = 1383&


Statement:
Public Const ERROR_TOO_MANY_CONTEXT_IDS = 1384&


Statement:
Public Const ERROR_LOGON_TYPE_NOT_GRANTED = 1385&


Statement:
Public Const ERROR_NT_CROSS_ENCRYPTION_REQUIRED = 1386&


Statement:
Public Const ERROR_NO_SUCH_MEMBER = 1387&


Statement:
Public Const ERROR_INVALID_MEMBER = 1388&


Statement:
Public Const ERROR_TOO_MANY_SIDS = 1389&


Statement:
Public Const ERROR_LM_CROSS_ENCRYPTION_REQUIRED = 1390&


Statement:
Public Const ERROR_NO_INHERITANCE = 1391&


Statement:
Public Const ERROR_NO_USER_SESSION_KEY = 1394&


Statement:
Public Const ERROR_INVALID_WINDOW_HANDLE = 1400&


Statement:
Public Const ERROR_INVALID_MENU_HANDLE = 1401&


Statement:
Public Const ERROR_INVALID_CURSOR_HANDLE = 1402&


Statement:
Public Const ERROR_INVALID_ACCEL_HANDLE = 1403&


Statement:
Public Const ERROR_INVALID_HOOK_HANDLE = 1404&


Statement:
Public Const ERROR_INVALID_DWP_HANDLE = 1405&


Statement:
Public Const ERROR_TLW_WITH_WSCHILD = 1406&


Statement:
Public Const ERROR_CANNOT_FIND_WND_CLASS = 1407&


Statement:
Public Const ERROR_WINDOW_OF_OTHER_THREAD = 1408&


Statement:
Public Const ERROR_HOTKEY_ALREADY_REGISTERED = 1409&


Statement:
Public Const ERROR_CLASS_ALREADY_EXISTS = 1410&


Statement:
Public Const ERROR_CLASS_DOES_NOT_EXIST = 1411&


Statement:
Public Const ERROR_CLASS_HAS_WINDOWS = 1412&


Statement:
Public Const ERROR_INVALID_INDEX = 1413&


Statement:
Public Const ERROR_INVALID_ICON_HANDLE = 1414&


Statement:
Public Const ERROR_PRIVATE_DIALOG_INDEX = 1415&


Statement:
Public Const ERROR_LISTBOX_ID_NOT_FOUND = 1416&


Statement:
Public Const ERROR_NO_WILDCARD_CHARACTERS = 1417&


Statement:
Public Const ERROR_CLIPBOARD_NOT_OPEN = 1418&


Statement:
Public Const ERROR_HOTKEY_NOT_REGISTERED = 1419&


Statement:
Public Const ERROR_WINDOW_NOT_DIALOG = 1420&


Statement:
Public Const ERROR_CONTROL_ID_NOT_FOUND = 1421&


Statement:
Public Const ERROR_INVALID_COMBOBOX_MESSAGE = 1422&


Statement:
Public Const ERROR_WINDOW_NOT_COMBOBOX = 1423&


Statement:
Public Const ERROR_INVALID_EDIT_HEIGHT = 1424&


Statement:
Public Const ERROR_INVALID_HOOK_FILTER = 1426&


Statement:
Public Const ERROR_INVALID_FILTER_PROC = 1427&


Statement:
Public Const ERROR_HOOK_NEEDS_HMOD = 1428&


Statement:
Public Const ERROR_PUBLIC_ONLY_HOOK = 1429&


Statement:
Public Const ERROR_JOURNAL_HOOK_SET = 1430&


Statement:
Public Const ERROR_HOOK_NOT_INSTALLED = 1431&


Statement:
Public Const ERROR_INVALID_LB_MESSAGE = 1432&


Statement:
Public Const ERROR_SETCOUNT_ON_BAD_LB = 1433&


Statement:
Public Const ERROR_LB_WITHOUT_TABSTOPS = 1434&


Statement:
Public Const ERROR_DESTROY_OBJECT_OF_OTHER_THREAD = 1435&


Statement:
Public Const ERROR_CHILD_WINDOW_MENU = 1436&


Statement:
Public Const ERROR_NO_SYSTEM_MENU = 1437&


Statement:
Public Const ERROR_INVALID_MSGBOX_STYLE = 1438&


Statement:
Public Const ERROR_INVALID_SPI_VALUE = 1439&


Statement:
Public Const ERROR_SCREEN_ALREADY_LOCKED = 1440&


Statement:
Public Const ERROR_HWNDS_HAVE_DIFF_PARENT = 1441&


Statement:
Public Const ERROR_NOT_CHILD_WINDOW = 1442&


Statement:
Public Const ERROR_INVALID_GW_COMMAND = 1443&


Statement:
Public Const ERROR_INVALID_THREAD_ID = 1444&


Statement:
Public Const ERROR_NON_MDICHILD_WINDOW = 1445&


Statement:
Public Const ERROR_POPUP_ALREADY_ACTIVE = 1446&


Statement:
Public Const ERROR_NO_SCROLLBARS = 1447&


Statement:
Public Const ERROR_INVALID_SCROLLBAR_RANGE = 1448&


Statement:
Public Const ERROR_INVALID_SHOWWIN_COMMAND = 1449&


Statement:
Public Const ERROR_EVENTLOG_FILE_CORRUPT = 1500&


Statement:
Public Const ERROR_EVENTLOG_CANT_START = 1501&


Statement:
Public Const ERROR_LOG_FILE_FULL = 1502&


Statement:
Public Const ERROR_EVENTLOG_FILE_CHANGED = 1503&


Statement:
Public Const RPC_S_INVALID_STRING_BINDING = 1700&


Statement:
Public Const RPC_S_WRONG_KIND_OF_BINDING = 1701&


Statement:
Public Const RPC_S_INVALID_BINDING = 1702&


Statement:
Public Const RPC_S_PROTSEQ_NOT_SUPPORTED = 1703&


Statement:
Public Const RPC_S_INVALID_RPC_PROTSEQ = 1704&


Statement:
Public Const RPC_S_INVALID_STRING_UUID = 1705&


Statement:
Public Const RPC_S_INVALID_ENDPOINT_FORMAT = 1706&


Statement:
Public Const RPC_S_INVALID_NET_ADDR = 1707&


Statement:
Public Const RPC_S_NO_ENDPOINT_FOUND = 1708&


Statement:
Public Const RPC_S_INVALID_TIMEOUT = 1709&


Statement:
Public Const RPC_S_OBJECT_NOT_FOUND = 1710&


Statement:
Public Const RPC_S_ALREADY_REGISTERED = 1711&


Statement:
Public Const RPC_S_TYPE_ALREADY_REGISTERED = 1712&


Statement:
Public Const RPC_S_ALREADY_LISTENING = 1713&


Statement:
Public Const RPC_S_NO_PROTSEQS_REGISTERED = 1714&


Statement:
Public Const RPC_S_NOT_LISTENING = 1715&


Statement:
Public Const RPC_S_UNKNOWN_MGR_TYPE = 1716&


Statement:
Public Const RPC_S_CANT_CREATE_ENDPOINT = 1720&


Statement:
Public Const RPC_S_OUT_OF_RESOURCES = 1721&


Statement:
Public Const RPC_S_SERVER_UNAVAILABLE = 1722&


Statement:
Public Const RPC_S_SERVER_TOO_BUSY = 1723&


Statement:
Public Const RPC_S_INVALID_NETWORK_OPTIONS = 1724&


Statement:
Public Const RPC_S_NO_CALL_ACTIVE = 1725&


Statement:
Public Const RPC_S_CALL_FAILED_DNE = 1727&


Statement:
Public Const RPC_S_PROTOCOL_ERROR = 1728&


Statement:
Public Const RPC_S_UNSUPPORTED_TRANS_SYN = 1730&


Statement:
Public Const RPC_S_UNSUPPORTED_TYPE = 1732&


Statement:
Public Const RPC_S_INVALID_BOUND = 1734&


Statement:
Public Const RPC_S_NO_ENTRY_NAME = 1735&


Statement:
Public Const RPC_S_INVALID_NAME_SYNTAX = 1736&


Statement:
Public Const RPC_S_UNSUPPORTED_NAME_SYNTAX = 1737&


Statement:
Public Const RPC_S_UUID_NO_ADDRESS = 1739&


Statement:
Public Const RPC_S_DUPLICATE_ENDPOINT = 1740&


Statement:
Public Const RPC_S_UNKNOWN_AUTHN_TYPE = 1741&


Statement:
Public Const RPC_S_MAX_CALLS_TOO_SMALL = 1742&


Statement:
Public Const RPC_S_STRING_TOO_LONG = 1743&


Statement:
Public Const RPC_S_PROTSEQ_NOT_FOUND = 1744&


Statement:
Public Const RPC_S_PROCNUM_OUT_OF_RANGE = 1745&


Statement:
Public Const RPC_S_BINDING_HAS_NO_AUTH = 1746&


Statement:
Public Const RPC_S_UNKNOWN_AUTHN_SERVICE = 1747&


Statement:
Public Const RPC_S_UNKNOWN_AUTHN_LEVEL = 1748&


Statement:
Public Const RPC_S_INVALID_AUTH_IDENTITY = 1749&


Statement:
Public Const RPC_S_UNKNOWN_AUTHZ_SERVICE = 1750&


Statement:
Public Const EPT_S_INVALID_ENTRY = 1751&


Statement:
Public Const EPT_S_CANT_PERFORM_OP = 1752&


Statement:
Public Const EPT_S_NOT_REGISTERED = 1753&


Statement:
Public Const RPC_S_NOTHING_TO_EXPORT = 1754&


Statement:
Public Const RPC_S_INCOMPLETE_NAME = 1755&


Statement:
Public Const RPC_S_INVALID_VERS_OPTION = 1756&


Statement:
Public Const RPC_S_NO_MORE_MEMBERS = 1757&


Statement:
Public Const RPC_S_NOT_ALL_OBJS_UNEXPORTED = 1758&


Statement:
Public Const RPC_S_INTERFACE_NOT_FOUND = 1759&


Statement:
Public Const RPC_S_ENTRY_ALREADY_EXISTS = 1760&


Statement:
Public Const RPC_S_ENTRY_NOT_FOUND = 1761&


Statement:
Public Const RPC_S_NAME_SERVICE_UNAVAILABLE = 1762&


Statement:
Public Const RPC_S_INVALID_NAF_ID = 1763&


Statement:
Public Const RPC_S_CANNOT_SUPPORT = 1764&


Statement:
Public Const RPC_S_NO_CONTEXT_AVAILABLE = 1765&


Statement:
Public Const RPC_S_INTERNAL_ERROR = 1766&


Statement:
Public Const RPC_S_ADDRESS_ERROR = 1768&


Statement:
Public Const RPC_X_NO_MORE_ENTRIES = 1772&


Statement:
Public Const RPC_X_SS_CHAR_TRANS_OPEN_FAIL = 1773&


Statement:
Public Const RPC_X_SS_CHAR_TRANS_SHORT_FILE = 1774&


Statement:
Public Const RPC_X_SS_IN_NULL_CONTEXT = 1775&


Statement:
Public Const RPC_X_SS_CONTEXT_DAMAGED = 1777&


Statement:
Public Const RPC_X_SS_HANDLES_MISMATCH = 1778&


Statement:
Public Const RPC_X_SS_CANNOT_GET_CALL_HANDLE = 1779&


Statement:
Public Const RPC_X_NULL_REF_POINTER = 1780&


Statement:
Public Const RPC_X_ENUM_VALUE_OUT_OF_RANGE = 1781&


Statement:
Public Const RPC_X_BYTE_COUNT_TOO_SMALL = 1782&


Statement:
Public Const RPC_X_BAD_STUB_DATA = 1783&


Statement:
Public Const ERROR_INVALID_USER_BUFFER = 1784&


Statement:
Public Const ERROR_UNRECOGNIZED_MEDIA = 1785&


Statement:
Public Const ERROR_NO_TRUST_LSA_SECRET = 1786&


Statement:
Public Const ERROR_NO_TRUST_SAM_ACCOUNT = 1787&


Statement:
Public Const ERROR_TRUSTED_DOMAIN_FAILURE = 1788&


Statement:
Public Const ERROR_TRUSTED_RELATIONSHIP_FAILURE = 1789&


Statement:
Public Const ERROR_TRUST_FAILURE = 1790&


Statement:
Public Const RPC_S_CALL_IN_PROGRESS = 1791&


Statement:
Public Const ERROR_NETLOGON_NOT_STARTED = 1792&


Statement:
Public Const ERROR_ACCOUNT_EXPIRED = 1793&


Statement:
Public Const ERROR_REDIRECTOR_HAS_OPEN_HANDLES = 1794&


Statement:
Public Const ERROR_PRINTER_DRIVER_ALREADY_INSTALLED = 1795&


Statement:
Public Const ERROR_UNKNOWN_PRINTER_DRIVER = 1797&


Statement:
Public Const ERROR_UNKNOWN_PRINTPROCESSOR = 1798&


Statement:
Public Const ERROR_INVALID_SEPARATOR_FILE = 1799&


Statement:
Public Const ERROR_INVALID_PRIORITY = 1800&


Statement:
Public Const ERROR_INVALID_PRINTER_NAME = 1801&


Statement:
Public Const ERROR_PRINTER_ALREADY_EXISTS = 1802&


Statement:
Public Const ERROR_INVALID_PRINTER_COMMAND = 1803&


Statement:
Public Const ERROR_INVALID_DATATYPE = 1804&


Statement:
Public Const ERROR_INVALID_ENVIRONMENT = 1805&


Statement:
Public Const RPC_S_NO_MORE_BINDINGS = 1806&


Statement:
Public Const ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT = 1807&


Statement:
Public Const ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT = 1808&


Statement:
Public Const ERROR_NOLOGON_SERVER_TRUST_ACCOUNT = 1809&


Statement:
Public Const ERROR_DOMAIN_TRUST_INCONSISTENT = 1810&


Statement:
Public Const ERROR_SERVER_HAS_OPEN_HANDLES = 1811&


Statement:
Public Const ERROR_RESOURCE_DATA_NOT_FOUND = 1812&


Statement:
Public Const ERROR_RESOURCE_TYPE_NOT_FOUND = 1813&


Statement:
Public Const ERROR_RESOURCE_NAME_NOT_FOUND = 1814&


Statement:
Public Const ERROR_RESOURCE_LANG_NOT_FOUND = 1815&


Statement:
Public Const ERROR_NOT_ENOUGH_QUOTA = 1816&


Statement:
Public Const RPC_S_GROUP_MEMBER_NOT_FOUND = 1898&


Statement:
Public Const RPC_S_INVALID_OBJECT = 1900&


Statement:
Public Const ERROR_INVALID_FORM_NAME = 1902&


Statement:
Public Const ERROR_INVALID_FORM_SIZE = 1903&


Statement:
Public Const ERROR_ALREADY_WAITING = 1904&


Statement:
Public Const ERROR_PRINTER_DELETED = 1905&


Statement:
Public Const ERROR_INVALID_PRINTER_STATE = 1906&


Statement:
Public Const ERROR_NO_BROWSER_SERVERS_FOUND = 6118&


Statement:
Public Const MAXPNAMELEN = 32  '  max product name length (including NULL)


Statement:
Public Const MAXERRORLENGTH = 128  '  max error text length (including final NULL)


Statement:
Type smpte
        hour As Byte
        min As Byte
        sec As Byte
        frame As Byte
        fps As Byte
        dummy As Byte
        pad(2) As Byte
End Type


Statement:
Type midi
        songptrpos As Long
End Type


Statement:
Type MMTIME
        wType As Long
        u As Long
End Type


Statement:
Public Const TIME_MS = &H1     '  time in Milliseconds


Statement:
Public Const TIME_SAMPLES = &H2     '  number of wave samples


Statement:
Public Const TIME_BYTES = &H4     '  current byte offset


Statement:
Public Const TIME_SMPTE = &H8     '  SMPTE time


Statement:
Public Const TIME_MIDI = &H10    '  MIDI time


Statement:
Public Const MM_JOY1MOVE = &H3A0  '  joystick


Statement:
Public Const MM_MCINOTIFY = &H3B9  '  MCI


Statement:
Public Const MM_MCISYSTEM_STRING = &H3CA


Statement:
Public Const MM_WOM_OPEN = &H3BB  '  waveform output


Statement:
Public Const MM_WIM_OPEN = &H3BE  '  waveform input


Statement:
Public Const MM_MIM_OPEN = &H3C1  '  MIDI input


Statement:
Public Const MM_MOM_OPEN = &H3C7  '  MIDI output


Statement:
Public Const TIMERR_BASE = 96   '  was 128, changed to match Win 31 Sonic


Statement:
Public Const MCI_STRING_OFFSET = 512  '  if this number is changed you MUST


Statement:
Public Const MMSYSERR_NOERROR = 0  '  no error


Statement:
Public Const MMSYSERR_ERROR = (MMSYSERR_BASE + 1)  '  unspecified error


Statement:
Public Const MMSYSERR_BADDEVICEID = (MMSYSERR_BASE + 2)  '  device ID out of range


Statement:
Public Const MMSYSERR_NOTENABLED = (MMSYSERR_BASE + 3)  '  driver failed enable


Statement:
Public Const MMSYSERR_ALLOCATED = (MMSYSERR_BASE + 4)  '  device already allocated


Statement:
Public Const MMSYSERR_INVALHANDLE = (MMSYSERR_BASE + 5)  '  device handle is invalid


Statement:
Public Const MMSYSERR_NODRIVER = (MMSYSERR_BASE + 6)  '  no device driver present


Statement:
Public Const MMSYSERR_NOMEM = (MMSYSERR_BASE + 7)  '  memory allocation error


Statement:
Public Const MMSYSERR_NOTSUPPORTED = (MMSYSERR_BASE + 8)  '  function isn't supported


Statement:
Public Const MMSYSERR_BADERRNUM = (MMSYSERR_BASE + 9)  '  error value out of range


Statement:
Public Const MMSYSERR_INVALFLAG = (MMSYSERR_BASE + 10) '  invalid flag passed


Statement:
Public Const MMSYSERR_INVALPARAM = (MMSYSERR_BASE + 11) '  invalid parameter passed


Statement:
Public Const MMSYSERR_HANDLEBUSY = (MMSYSERR_BASE + 12) '  handle being used


Statement:
Public Const MMSYSERR_INVALIDALIAS = (MMSYSERR_BASE + 13) '  "Specified alias not found in WIN.INI


Statement:
Public Const MMSYSERR_LASTERROR = (MMSYSERR_BASE + 13) '  last error in range


Statement:
Public Const MM_MOM_POSITIONCB = &H3CA              '  Callback for MEVT_POSITIONCB


Statement:
Public Const MM_MIM_MOREDATA = &H3CC                '  MIM_DONE w/ pending events


Statement:
Public Const MIDICAPS_STREAM = &H8               '  driver supports midiStreamOut directly


Statement:
Type MIDIEVENT
        dwDeltaTime As Long          '  Ticks since last event
        dwStreamID As Long           '  Reserved; must be zero
        dwEvent As Long              '  Event type and parameters
        dwParms(1) As Long           '  Parameters if this is a long event
End Type


Statement:
Type MIDISTRMBUFFVER
        dwVersion As Long                  '  Stream buffer format version
        dwMid As Long                      '  Manufacturer ID as defined in MMREG.H
        dwOEMVersion As Long               '  Manufacturer version for custom ext
End Type


Statement:
Public Const MEVT_F_CALLBACK = &H40000000


Statement:
Type MIDIPROPTIMEDIV
        cbStruct As Long
        dwTimeDiv As Long
End Type


Statement:
Type MIDIPROPTEMPO
        cbStruct As Long
        dwTempo As Long
End Type


Statement:
Public Const MIXER_SHORT_NAME_CHARS = 16


Statement:
Public Const MIXERR_INVALLINE = (MIXERR_BASE + 0)


Statement:
Public Const MIXERR_INVALCONTROL = (MIXERR_BASE + 1)


Statement:
Public Const MIXERR_INVALVALUE = (MIXERR_BASE + 2)


Statement:
Public Const MIXERR_LASTERROR = (MIXERR_BASE + 2)


Statement:
Public Const MIXER_OBJECTF_HANDLE = &H80000000


Statement:
Public Const MIXER_OBJECTF_HMIXER = (MIXER_OBJECTF_HANDLE Or MIXER_OBJECTF_MIXER)


Statement:
Public Const MIXER_OBJECTF_WAVEOUT = &H10000000


Statement:
Public Const MIXER_OBJECTF_HWAVEOUT = (MIXER_OBJECTF_HANDLE Or MIXER_OBJECTF_WAVEOUT)


Statement:
Public Const MIXER_OBJECTF_WAVEIN = &H20000000


Statement:
Public Const MIXER_OBJECTF_HWAVEIN = (MIXER_OBJECTF_HANDLE Or MIXER_OBJECTF_WAVEIN)


Statement:
Public Const MIXER_OBJECTF_MIDIOUT = &H30000000


Statement:
Public Const MIXER_OBJECTF_HMIDIOUT = (MIXER_OBJECTF_HANDLE Or MIXER_OBJECTF_MIDIOUT)


Statement:
Public Const MIXER_OBJECTF_MIDIIN = &H40000000


Statement:
Public Const MIXER_OBJECTF_HMIDIIN = (MIXER_OBJECTF_HANDLE Or MIXER_OBJECTF_MIDIIN)


Statement:
Public Const MIXER_OBJECTF_AUX = &H50000000


Statement:
Declare Function mixerGetNumDevs Lib "winmm.dll" Alias "mixerGetNumDevs" () As Long


Statement:
Type MIXERCAPS
        wMid As Integer                   '  manufacturer id
        wPid As Integer                   '  product id
        vDriverVersion As Long            '  version of the driver
        szPname As String * MAXPNAMELEN   '  product name
        fdwSupport As Long             '  misc. support bits
        cDestinations As Long          '  count of destinations
End Type


Statement:
Declare Function mixerGetDevCaps Lib "winmm.dll" Alias "mixerGetDevCapsA" (ByVal uMxId As Long, ByVal pmxcaps As MIXERCAPS, ByVal cbmxcaps As Long) As Long


Statement:
Declare Function mixerOpen Lib "winmm.dll" Alias "mixerOpen" (phmx As Long, ByVal uMxId As Long, ByVal dwCallback As Long, ByVal dwInstance As Long, ByVal fdwOpen As Long) As Long


Statement:
Declare Function mixerClose Lib "winmm.dll" Alias "mixerClose" (ByVal hmx As Long) As Long


Statement:
Declare Function mixerMessage Lib "winmm.dll" Alias "mixerMessage" (ByVal hmx As Long, ByVal uMsg As Long, ByVal dwParam1 As Long, ByVal dwParam2 As Long) As Long


DisplayName:
Target    ' for use in MIXERLINE and others (embed

Statement:
Type Target    ' for use in MIXERLINE and others (embedded structure)
        
        dwType As Long                 '  MIXERLINE_TARGETTYPE_xxxx
        dwDeviceID As Long             '  target device ID of device type
        wMid As Integer                   '  of target device
        wPid As Integer                   '       "
        vDriverVersion As Long            '       "
        szPname As String * MAXPNAMELEN
End Type


Statement:
Type MIXERLINE
        cbStruct As Long               '  size of MIXERLINE structure
        dwDestination As Long          '  zero based destination index
        dwSource As Long               '  zero based source index (if source)
        dwLineID As Long               '  unique line id for mixer device
        fdwLine As Long                '  state/information about line
        dwUser As Long                 '  driver specific information
        dwComponentType As Long        '  component type line connects to
        cChannels As Long              '  number of channels line supports
        cConnections As Long           '  number of connections (possible)
        cControls As Long              '  number of controls at this line
        szShortName As String * MIXER_SHORT_NAME_CHARS
        szName As String * MIXER_LONG_NAME_CHARS
        lpTarget As Target
End Type


Statement:
Public Const MIXERLINE_LINEF_ACTIVE = &H1&


Statement:
Public Const MIXERLINE_LINEF_DISCONNECTED = &H8000&


Statement:
Public Const MIXERLINE_LINEF_SOURCE = &H80000000


Statement:
Public Const MIXERLINE_COMPONENTTYPE_DST_FIRST = &H0&


Statement:
Public Const MIXERLINE_COMPONENTTYPE_DST_UNDEFINED = (MIXERLINE_COMPONENTTYPE_DST_FIRST + 0)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_DST_DIGITAL = (MIXERLINE_COMPONENTTYPE_DST_FIRST + 1)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_DST_LINE = (MIXERLINE_COMPONENTTYPE_DST_FIRST + 2)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_DST_MONITOR = (MIXERLINE_COMPONENTTYPE_DST_FIRST + 3)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_DST_SPEAKERS = (MIXERLINE_COMPONENTTYPE_DST_FIRST + 4)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_DST_HEADPHONES = (MIXERLINE_COMPONENTTYPE_DST_FIRST + 5)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_DST_TELEPHONE = (MIXERLINE_COMPONENTTYPE_DST_FIRST + 6)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_DST_WAVEIN = (MIXERLINE_COMPONENTTYPE_DST_FIRST + 7)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_DST_VOICEIN = (MIXERLINE_COMPONENTTYPE_DST_FIRST + 8)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_DST_LAST = (MIXERLINE_COMPONENTTYPE_DST_FIRST + 8)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_FIRST = &H1000&


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_UNDEFINED = (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 0)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_DIGITAL = (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 1)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_LINE = (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 2)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE = (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 3)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_SYNTHESIZER = (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 4)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_COMPACTDISC = (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 5)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_TELEPHONE = (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 6)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_PCSPEAKER = (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 7)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_WAVEOUT = (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 8)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_AUXILIARY = (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 9)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_ANALOG = (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 10)


Statement:
Public Const MIXERLINE_COMPONENTTYPE_SRC_LAST = (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 10)


Statement:
Public Const MIXERLINE_TARGETTYPE_UNDEFINED = 0


Statement:
Public Const MIXERLINE_TARGETTYPE_WAVEOUT = 1


Statement:
Public Const MIXERLINE_TARGETTYPE_WAVEIN = 2


Statement:
Public Const MIXERLINE_TARGETTYPE_MIDIOUT = 3


Statement:
Public Const MIXERLINE_TARGETTYPE_MIDIIN = 4


Statement:
Public Const MIXERLINE_TARGETTYPE_AUX = 5


Statement:
Declare Function mixerGetLineInfo Lib "winmm.dll" Alias "mixerGetLineInfoA" (ByVal hmxobj As Long, pmxl As MIXERLINE, ByVal fdwInfo As Long) As Long


Statement:
Public Const MIXER_GETLINEINFOF_DESTINATION = &H0&


Statement:
Public Const MIXER_GETLINEINFOF_SOURCE = &H1&


Statement:
Public Const MIXER_GETLINEINFOF_LINEID = &H2&


Statement:
Public Const MIXER_GETLINEINFOF_COMPONENTTYPE = &H3&


Statement:
Public Const MIXER_GETLINEINFOF_TARGETTYPE = &H4&


Statement:
Public Const MIXER_GETLINEINFOF_QUERYMASK = &HF&


Statement:
Declare Function mixerGetID Lib "winmm.dll" Alias "mixerGetID" (ByVal hmxobj As Long, pumxID As Long, ByVal fdwId As Long) As Long


Statement:
Type MIXERCONTROL
        cbStruct As Long           '  size in Byte of MIXERCONTROL
        dwControlID As Long        '  unique control id for mixer device
        dwControlType As Long      '  MIXERCONTROL_CONTROLTYPE_xxx
        fdwControl As Long         '  MIXERCONTROL_CONTROLF_xxx
        cMultipleItems As Long     '  if MIXERCONTROL_CONTROLF_MULTIPLE set
        szShortName As String * MIXER_SHORT_NAME_CHARS
        szName As String * MIXER_LONG_NAME_CHARS
        Bounds As Double
        Metrics As Long
End Type


Statement:
Public Const MIXERCONTROL_CONTROLF_UNIFORM = &H1&


Statement:
Public Const MIXERCONTROL_CONTROLF_MULTIPLE = &H2&


Statement:
Public Const MIXERCONTROL_CONTROLF_DISABLED = &H80000000


Statement:
Public Const MIXERCONTROL_CT_CLASS_MASK = &HF0000000


Statement:
Public Const MIXERCONTROL_CT_CLASS_CUSTOM = &H0&


Statement:
Public Const MIXERCONTROL_CT_CLASS_METER = &H10000000


Statement:
Public Const MIXERCONTROL_CT_CLASS_SWITCH = &H20000000


Statement:
Public Const MIXERCONTROL_CT_CLASS_NUMBER = &H30000000


Statement:
Public Const MIXERCONTROL_CT_CLASS_SLIDER = &H40000000


Statement:
Public Const MIXERCONTROL_CT_CLASS_FADER = &H50000000


Statement:
Public Const MIXERCONTROL_CT_CLASS_TIME = &H60000000


Statement:
Public Const MIXERCONTROL_CT_CLASS_LIST = &H70000000


Statement:
Public Const MIXERCONTROL_CT_SUBCLASS_MASK = &HF000000


Statement:
Public Const MIXERCONTROL_CT_SC_SWITCH_BOOLEAN = &H0&


Statement:
Public Const MIXERCONTROL_CT_SC_SWITCH_BUTTON = &H1000000


Statement:
Public Const MIXERCONTROL_CT_SC_METER_POLLED = &H0&


Statement:
Public Const MIXERCONTROL_CT_SC_TIME_MICROSECS = &H0&


Statement:
Public Const MIXERCONTROL_CT_SC_TIME_MILLISECS = &H1000000


Statement:
Public Const MIXERCONTROL_CT_SC_LIST_SINGLE = &H0&


Statement:
Public Const MIXERCONTROL_CT_SC_LIST_MULTIPLE = &H1000000


Statement:
Public Const MIXERCONTROL_CT_UNITS_MASK = &HFF0000


Statement:
Public Const MIXERCONTROL_CT_UNITS_CUSTOM = &H0&


Statement:
Public Const MIXERCONTROL_CT_UNITS_BOOLEAN = &H10000


Statement:
Public Const MIXERCONTROL_CT_UNITS_SIGNED = &H20000


Statement:
Public Const MIXERCONTROL_CT_UNITS_UNSIGNED = &H30000


Statement:
Public Const MIXERCONTROL_CT_UNITS_DECIBELS = &H40000 '  in 10ths


Statement:
Public Const MIXERCONTROL_CT_UNITS_PERCENT = &H50000 '  in 10ths


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_CUSTOM = (MIXERCONTROL_CT_CLASS_CUSTOM Or MIXERCONTROL_CT_UNITS_CUSTOM)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_BOOLEANMETER = (MIXERCONTROL_CT_CLASS_METER Or MIXERCONTROL_CT_SC_METER_POLLED Or MIXERCONTROL_CT_UNITS_BOOLEAN)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_SIGNEDMETER = (MIXERCONTROL_CT_CLASS_METER Or MIXERCONTROL_CT_SC_METER_POLLED Or MIXERCONTROL_CT_UNITS_SIGNED)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_PEAKMETER = (MIXERCONTROL_CONTROLTYPE_SIGNEDMETER + 1)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_UNSIGNEDMETER = (MIXERCONTROL_CT_CLASS_METER Or MIXERCONTROL_CT_SC_METER_POLLED Or MIXERCONTROL_CT_UNITS_UNSIGNED)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_BOOLEAN = (MIXERCONTROL_CT_CLASS_SWITCH Or MIXERCONTROL_CT_SC_SWITCH_BOOLEAN Or MIXERCONTROL_CT_UNITS_BOOLEAN)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_ONOFF = (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 1)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_MUTE = (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 2)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_MONO = (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 3)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_LOUDNESS = (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 4)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_STEREOENH = (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 5)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_BUTTON = (MIXERCONTROL_CT_CLASS_SWITCH Or MIXERCONTROL_CT_SC_SWITCH_BUTTON Or MIXERCONTROL_CT_UNITS_BOOLEAN)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_DECIBELS = (MIXERCONTROL_CT_CLASS_NUMBER Or MIXERCONTROL_CT_UNITS_DECIBELS)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_SIGNED = (MIXERCONTROL_CT_CLASS_NUMBER Or MIXERCONTROL_CT_UNITS_SIGNED)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_UNSIGNED = (MIXERCONTROL_CT_CLASS_NUMBER Or MIXERCONTROL_CT_UNITS_UNSIGNED)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_PERCENT = (MIXERCONTROL_CT_CLASS_NUMBER Or MIXERCONTROL_CT_UNITS_PERCENT)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_SLIDER = (MIXERCONTROL_CT_CLASS_SLIDER Or MIXERCONTROL_CT_UNITS_SIGNED)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_PAN = (MIXERCONTROL_CONTROLTYPE_SLIDER + 1)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_QSOUNDPAN = (MIXERCONTROL_CONTROLTYPE_SLIDER + 2)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_FADER = (MIXERCONTROL_CT_CLASS_FADER Or MIXERCONTROL_CT_UNITS_UNSIGNED)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_VOLUME = (MIXERCONTROL_CONTROLTYPE_FADER + 1)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_BASS = (MIXERCONTROL_CONTROLTYPE_FADER + 2)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_TREBLE = (MIXERCONTROL_CONTROLTYPE_FADER + 3)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_EQUALIZER = (MIXERCONTROL_CONTROLTYPE_FADER + 4)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_SINGLESELECT = (MIXERCONTROL_CT_CLASS_LIST Or MIXERCONTROL_CT_SC_LIST_SINGLE Or MIXERCONTROL_CT_UNITS_BOOLEAN)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_MUX = (MIXERCONTROL_CONTROLTYPE_SINGLESELECT + 1)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_MULTIPLESELECT = (MIXERCONTROL_CT_CLASS_LIST Or MIXERCONTROL_CT_SC_LIST_MULTIPLE Or MIXERCONTROL_CT_UNITS_BOOLEAN)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_MIXER = (MIXERCONTROL_CONTROLTYPE_MULTIPLESELECT + 1)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_MICROTIME = (MIXERCONTROL_CT_CLASS_TIME Or MIXERCONTROL_CT_SC_TIME_MICROSECS Or MIXERCONTROL_CT_UNITS_UNSIGNED)


Statement:
Public Const MIXERCONTROL_CONTROLTYPE_MILLITIME = (MIXERCONTROL_CT_CLASS_TIME Or MIXERCONTROL_CT_SC_TIME_MILLISECS Or MIXERCONTROL_CT_UNITS_UNSIGNED)


Statement:
Type MIXERLINECONTROLS
        cbStruct As Long       '  size in Byte of MIXERLINECONTROLS
        dwLineID As Long       '  line id (from MIXERLINE.dwLineID)
                                             '  MIXER_GETLINECONTROLSF_ONEBYID or
        dwControl As Long  '  MIXER_GETLINECONTROLSF_ONEBYTYPE
        cControls As Long      '  count of controls pmxctrl points to
        cbmxctrl As Long       '  size in Byte of _one_ MIXERCONTROL
        pamxctrl As MIXERCONTROL       '  pointer to first MIXERCONTROL array
End Type


Statement:
Declare Function mixerGetLineControls Lib "winmm.dll" Alias "mixerGetLineControlsA" (ByVal hmxobj As Long, pmxlc As MIXERLINECONTROLS, ByVal fdwControls As Long) As Long


Statement:
Public Const MIXER_GETLINECONTROLSF_ALL = &H0&


Statement:
Public Const MIXER_GETLINECONTROLSF_ONEBYID = &H1&


Statement:
Public Const MIXER_GETLINECONTROLSF_ONEBYTYPE = &H2&


Statement:
Public Const MIXER_GETLINECONTROLSF_QUERYMASK = &HF&


Statement:
Type MIXERCONTROLDETAILS
        cbStruct As Long       '  size in Byte of MIXERCONTROLDETAILS
        dwControlID As Long    '  control id to get/set details on
        cChannels As Long      '  number of channels in paDetails array
        item As Long                           ' hwndOwner or cMultipleItems
        cbDetails As Long      '  size of _one_ details_XX struct
        paDetails As Long      '  pointer to array of details_XX structs
End Type


Statement:
Type MIXERCONTROLDETAILS_LISTTEXT
        dwParam1 As Long
        dwParam2 As Long
        szName As String * MIXER_LONG_NAME_CHARS
End Type


Statement:
Type MIXERCONTROLDETAILS_BOOLEAN
        fValue As Long
End Type


Statement:
Type MIXERCONTROLDETAILS_SIGNED
        lValue As Long
End Type


Statement:
Type MIXERCONTROLDETAILS_UNSIGNED
        dwValue As Long
End Type


Statement:
Declare Function mixerGetControlDetails Lib "winmm.dll" Alias "mixerGetControlDetailsA" (ByVal hmxobj As Long, pmxcd As MIXERCONTROLDETAILS, ByVal fdwDetails As Long) As Long


Statement:
Public Const MIXER_GETCONTROLDETAILSF_VALUE = &H0&


Statement:
Public Const MIXER_GETCONTROLDETAILSF_LISTTEXT = &H1&


Statement:
Public Const MIXER_GETCONTROLDETAILSF_QUERYMASK = &HF&


Statement:
Declare Function mixerSetControlDetails Lib "winmm.dll" Alias "mixerSetControlDetails" (ByVal hmxobj As Long, pmxcd As MIXERCONTROLDETAILS, ByVal fdwDetails As Long) As Long


Statement:
Public Const MIXER_SETCONTROLDETAILSF_VALUE = &H0&


Statement:
Public Const MIXER_SETCONTROLDETAILSF_CUSTOM = &H1&


Statement:
Public Const MIXER_SETCONTROLDETAILSF_QUERYMASK = &HF&


Statement:
Public Const JOY_RETURNU = &H10                             '  axis 5


Statement:
Public Const JOY_RETURNV = &H20                             '  axis 6


Statement:
Public Const JOY_RETURNCENTERED = &H400&


Statement:
Public Const JOY_RETURNALL = (JOY_RETURNX Or JOY_RETURNY Or JOY_RETURNZ Or JOY_RETURNR Or JOY_RETURNU Or JOY_RETURNV Or JOY_RETURNPOV Or JOY_RETURNBUTTONS)


Statement:
Public Const JOY_CAL_READALWAYS = &H10000


Statement:
Public Const JOY_CAL_READXYONLY = &H20000


Statement:
Public Const JOY_CAL_READXONLY = &H100000


Statement:
Public Const JOY_CAL_READYONLY = &H200000


Statement:
Public Const JOY_CAL_READZONLY = &H1000000


Statement:
Public Const JOY_CAL_READRONLY = &H2000000


Statement:
Public Const JOY_CAL_READUONLY = &H4000000


Statement:
Public Const JOY_CAL_READVONLY = &H8000000


Statement:
Declare Function joyGetPos Lib "winmm.dll" Alias "joyGetPos" (ByVal uJoyID As Long, pji As JOYINFO) As Long


Statement:
Declare Function joyGetPosEx Lib "winmm.dll" Alias "joyGetPosEx" (ByVal uJoyID As Long, pji As JOYINFOEX) As Long


Statement:
Public Const SND_PURGE = &H40               '  purge non-static events for task


Statement:
Public Const SND_APPLICATION = &H80         '  look for application specific association


Statement:
Public Const WAVE_FORMAT_DIRECT_QUERY = (WAVE_FORMAT_QUERY Or WAVE_FORMAT_DIRECT)


Statement:
Public Const MIM_MOREDATA = MM_MIM_MOREDATA


Statement:
Public Const MOM_POSITIONCB = MM_MOM_POSITIONCB


Statement:
Declare Function midiStreamOpen Lib "winmm.dll" Alias "midiStreamOpen" (phms As Long, puDeviceID As Long, ByVal cMidi As Long, ByVal dwCallback As Long, ByVal dwInstance As Long, ByVal fdwOpen As Long) As Long


Statement:
Declare Function midiStreamClose Lib "winmm.dll" Alias "midiStreamClose" (ByVal hms As Long) As Long


Statement:
Declare Function midiStreamProperty Lib "winmm.dll" Alias "midiStreamProperty" (ByVal hms As Long, lppropdata As Byte, ByVal dwProperty As Long) As Long


Statement:
Declare Function midiStreamPosition Lib "winmm.dll" Alias "midiStreamPosition" (ByVal hms As Long, lpmmt As MMTIME, ByVal cbmmt As Long) As Long


Statement:
Declare Function midiStreamOut Lib "winmm.dll" Alias "midiStreamOut" (ByVal hms As Long, pmh As MIDIHDR, ByVal cbmh As Long) As Long


Statement:
Declare Function midiStreamPause Lib "winmm.dll" Alias "midiStreamPause" (ByVal hms As Long) As Long


Statement:
Declare Function midiStreamRestart Lib "winmm.dll" Alias "midiStreamRestart" (ByVal hms As Long) As Long


Statement:
Declare Function midiStreamStop Lib "winmm.dll" Alias "midiStreamStop" (ByVal hms As Long) As Long


Statement:
Declare Function midiConnect Lib "winmm.dll" Alias "midiConnect" (ByVal hmi As Long, ByVal hmo As Long, pReserved As Any) As Long


Statement:
Declare Function midiDisconnect Lib "winmm.dll" Alias "midiDisconnect" (ByVal hmi As Long, ByVal hmo As Long, pReserved As Any) As Long


Statement:
Type JOYINFOEX
        dwSize As Long                 '  size of structure
        dwFlags As Long                 '  flags to indicate what to return
        dwXpos As Long                '  x position
        dwYpos As Long                '  y position
        dwZpos As Long                '  z position
        dwRpos As Long                 '  rudder/4th axis position
        dwUpos As Long                 '  5th axis position
        dwVpos As Long                 '  6th axis position
        dwButtons As Long             '  button states
        dwButtonNumber As Long        '  current button number pressed
        dwPOV As Long                 '  point of view state
        dwReserved1 As Long                 '  reserved for communication between winmm driver
        dwReserved2 As Long                 '  reserved for future expansion
End Type


Statement:
Type DRVCONFIGINFO
        dwDCISize As Long
        lpszDCISectionName As String
        lpszDCIAliasName As String
        dnDevNode As Long
End Type


Statement:
Public Const DRV_RESTART = DRVCNF_RESTART


Statement:
Declare Function CloseDriver Lib "winmm.dll" Alias "CloseDriver" (ByVal hDriver As Long, ByVal lParam1 As Long, ByVal lParam2 As Long) As Long


Statement:
Declare Function OpenDriver Lib "winmm.dll" Alias "OpenDriver" (ByVal szDriverName As String, ByVal szSectionName As String, ByVal lParam2 As Long) As Long


Statement:
Declare Function SendDriverMessage Lib "winmm.dll" Alias "SendDriverMessage" (ByVal hDriver As Long, ByVal message As Long, ByVal lParam1 As Long, ByVal lParam2 As Long) As Long


Statement:
Declare Function DrvGetModuleHandle Lib "winmm.dll" Alias "DrvGetModuleHandle" (ByVal hDriver As Long) As Long


Statement:
Declare Function GetDriverModuleHandle Lib "winmm.dll" Alias "GetDriverModuleHandle" (ByVal hDriver As Long) As Long


Statement:
Declare Function DefDriverProc Lib "winmm.dll" Alias "DefDriverProc" (ByVal dwDriverIdentifier As Long, ByVal hdrvr As Long, ByVal uMsg As Long, ByVal lParam1 As Long, ByVal lParam2 As Long) As Long


Statement:
Public Const DRV_MCI_FIRST = DRV_RESERVED


Statement:
Public Const DRV_MCI_LAST = DRV_RESERVED + &HFFF


Statement:
Public Const CALLBACK_TYPEMASK = &H70000      '  callback type mask


Statement:
Public Const CALLBACK_NULL = &H0        '  no callback


Statement:
Public Const CALLBACK_WINDOW = &H10000      '  dwCallback is a HWND


Statement:
Public Const CALLBACK_TASK = &H20000      '  dwCallback is a HTASK


Statement:
Public Const CALLBACK_FUNCTION = &H30000      '  dwCallback is a FARPROC


Statement:
Public Const MM_MICROSOFT = 1  '  Microsoft Corp.


Statement:
Public Const MM_MIDI_MAPPER = 1  '  MIDI Mapper


Statement:
Public Const MM_WAVE_MAPPER = 2  '  Wave Mapper


Statement:
Public Const MM_SNDBLST_MIDIOUT = 3  '  Sound Blaster MIDI output port


Statement:
Public Const MM_SNDBLST_MIDIIN = 4  '  Sound Blaster MIDI input port


Statement:
Public Const MM_SNDBLST_SYNTH = 5  '  Sound Blaster internal synthesizer


Statement:
Public Const MM_SNDBLST_WAVEOUT = 6  '  Sound Blaster waveform output


Statement:
Public Const MM_SNDBLST_WAVEIN = 7  '  Sound Blaster waveform input


Statement:
Public Const MM_ADLIB = 9  '  Ad Lib-compatible synthesizer


Statement:
Public Const MM_MPU401_MIDIOUT = 10  '  MPU401-compatible MIDI output port


Statement:
Public Const MM_MPU401_MIDIIN = 11  '  MPU401-compatible MIDI input port


Statement:
Public Const MM_PC_JOYSTICK = 12  '  Joystick adapter


Statement:
Declare Function mmsystemGetVersion Lib "winmm.dll" Alias "mmsystemGetVersion" () As Long


Statement:
Declare Sub OutputDebugStr Lib "winmm.dll" Alias "OutputDebugStr" (ByVal lpszOutputString As String)


Statement:
Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long


Statement:
Public Const SND_SYNC = &H0         '  play synchronously (default)


Statement:
Public Const SND_ASYNC = &H1         '  play asynchronously


Statement:
Public Const SND_NODEFAULT = &H2         '  silence not default, if sound not found


Statement:
Public Const SND_MEMORY = &H4         '  lpszSoundName points to a memory file


Statement:
Public Const SND_ALIAS = &H10000     '  name is a WIN.INI [sounds] entry


Statement:
Public Const SND_FILENAME = &H20000     '  name is a file name


Statement:
Public Const SND_RESOURCE = &H40004     '  name is a resource name or atom


Statement:
Public Const SND_ALIAS_ID = &H110000    '  name is a WIN.INI [sounds] entry identifier


Statement:
Public Const SND_ALIAS_START = 0  '  must be > 4096 to keep strings in same section of resource file


Statement:
Public Const SND_LOOP = &H8         '  loop the sound until next sndPlaySound


Statement:
Public Const SND_NOSTOP = &H10        '  don't stop any currently playing sound


Statement:
Public Const SND_VALID = &H1F        '  valid flags          / ;Internal /


Statement:
Public Const SND_NOWAIT = &H2000      '  don't wait if the driver is busy


Statement:
Public Const SND_VALIDFLAGS = &H17201F    '  Set of valid flag bits.  Anything outside


Statement:
Public Const SND_RESERVED = &HFF000000  '  In particular these flags are reserved


Statement:
Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long


Statement:
Public Const WAVERR_BADFORMAT = (WAVERR_BASE + 0)    '  unsupported wave format


Statement:
Public Const WAVERR_STILLPLAYING = (WAVERR_BASE + 1)    '  still something playing


Statement:
Public Const WAVERR_UNPREPARED = (WAVERR_BASE + 2)    '  header not prepared


Statement:
Public Const WAVERR_SYNC = (WAVERR_BASE + 3)    '  device is synchronous


Statement:
Public Const WAVERR_LASTERROR = (WAVERR_BASE + 3)    '  last error in range


Statement:
Public Const WAVE_VALID = &H3         '  ;Internal


Statement:
Type WAVEHDR
        lpData As String
        dwBufferLength As Long
        dwBytesRecorded As Long
        dwUser As Long
        dwFlags As Long
        dwLoops As Long
        lpNext As Long
        Reserved As Long
End Type


Statement:
Public Const WHDR_DONE = &H1         '  done bit


Statement:
Public Const WHDR_PREPARED = &H2         '  set if this header has been prepared


Statement:
Public Const WHDR_BEGINLOOP = &H4         '  loop start block


Statement:
Public Const WHDR_ENDLOOP = &H8         '  loop end block


Statement:
Public Const WHDR_INQUEUE = &H10        '  reserved for driver


Statement:
Public Const WHDR_VALID = &H1F        '  valid flags      / ;Internal /


Statement:
Type WAVEOUTCAPS
        wMid As Integer
        wPid As Integer
        vDriverVersion As Long
        szPname As String * MAXPNAMELEN
        dwFormats As Long
        wChannels As Integer
        dwSupport As Long
End Type


Statement:
Public Const WAVECAPS_PITCH = &H1         '  supports pitch control


Statement:
Public Const WAVECAPS_PLAYBACKRATE = &H2         '  supports playback rate control


Statement:
Public Const WAVECAPS_VOLUME = &H4         '  supports volume control


Statement:
Public Const WAVECAPS_LRVOLUME = &H8         '  separate left-right volume control


Statement:
Type WAVEINCAPS
        wMid As Integer
        wPid As Integer
        vDriverVersion As Long
        szPname As String * MAXPNAMELEN
        dwFormats As Long
        wChannels As Integer
End Type


Statement:
Public Const WAVE_INVALIDFORMAT = &H0              '  invalid format


Statement:
Public Const WAVE_FORMAT_1M08 = &H1              '  11.025 kHz, Mono,   8-bit


Statement:
Public Const WAVE_FORMAT_1S08 = &H2              '  11.025 kHz, Stereo, 8-bit


Statement:
Public Const WAVE_FORMAT_1M16 = &H4              '  11.025 kHz, Mono,   16-bit


Statement:
Public Const WAVE_FORMAT_1S16 = &H8              '  11.025 kHz, Stereo, 16-bit


Statement:
Public Const WAVE_FORMAT_2M08 = &H10             '  22.05  kHz, Mono,   8-bit


Statement:
Public Const WAVE_FORMAT_2S08 = &H20             '  22.05  kHz, Stereo, 8-bit


Statement:
Public Const WAVE_FORMAT_2M16 = &H40             '  22.05  kHz, Mono,   16-bit


Statement:
Public Const WAVE_FORMAT_2S16 = &H80             '  22.05  kHz, Stereo, 16-bit


Statement:
Public Const WAVE_FORMAT_4M08 = &H100            '  44.1   kHz, Mono,   8-bit


Statement:
Public Const WAVE_FORMAT_4S08 = &H200            '  44.1   kHz, Stereo, 8-bit


Statement:
Public Const WAVE_FORMAT_4M16 = &H400            '  44.1   kHz, Mono,   16-bit


Statement:
Public Const WAVE_FORMAT_4S16 = &H800            '  44.1   kHz, Stereo, 16-bit


Statement:
Public Const WAVE_FORMAT_PCM = 1  '  Needed in resource files so outside #ifndef RC_INVOKED


Statement:
Type WAVEFORMAT
        wFormatTag As Integer
        nChannels As Integer
        nSamplesPerSec As Long
        nAvgBytesPerSec As Long
        nBlockAlign As Integer
End Type


Statement:
Type PCMWAVEFORMAT
        wf As WAVEFORMAT
        wBitsPerSample As Integer
End Type


Statement:
Declare Function waveOutGetNumDevs Lib "winmm.dll" Alias "waveOutGetNumDevs" () As Long


Statement:
Declare Function waveOutGetDevCaps Lib "winmm.dll" Alias "waveOutGetDevCapsA" (ByVal uDeviceID As Long, lpCaps As WAVEOUTCAPS, ByVal uSize As Long) As Long


Statement:
Declare Function waveOutGetVolume Lib "winmm.dll" Alias "waveOutGetVolume" (ByVal uDeviceID As Long, lpdwVolume As Long) As Long


Statement:
Declare Function waveOutSetVolume Lib "winmm.dll" Alias "waveOutSetVolume" (ByVal uDeviceID As Long, ByVal dwVolume As Long) As Long


Statement:
Declare Function waveOutGetErrorText Lib "winmm.dll" Alias "waveOutGetErrorTextA" (ByVal err As Long, ByVal lpText As String, ByVal uSize As Long) As Long


Statement:
Declare Function waveOutOpen Lib "winmm.dll" Alias "waveOutOpen" (lphWaveOut As Long, ByVal uDeviceID As Long, lpFormat As WAVEFORMAT, ByVal dwCallback As Long, ByVal dwInstance As Long, ByVal dwFlags As Long) As Long


Statement:
Declare Function waveOutClose Lib "winmm.dll" Alias "waveOutClose" (ByVal hWaveOut As Long) As Long


Statement:
Declare Function waveOutPrepareHeader Lib "winmm.dll" Alias "waveOutPrepareHeader" (ByVal hWaveOut As Long, lpWaveOutHdr As WAVEHDR, ByVal uSize As Long) As Long


Statement:
Declare Function waveOutUnprepareHeader Lib "winmm.dll" Alias "waveOutUnprepareHeader" (ByVal hWaveOut As Long, lpWaveOutHdr As WAVEHDR, ByVal uSize As Long) As Long


Statement:
Declare Function waveOutWrite Lib "winmm.dll" Alias "waveOutWrite" (ByVal hWaveOut As Long, lpWaveOutHdr As WAVEHDR, ByVal uSize As Long) As Long


Statement:
Declare Function waveOutPause Lib "winmm.dll" Alias "waveOutPause" (ByVal hWaveOut As Long) As Long


Statement:
Declare Function waveOutRestart Lib "winmm.dll" Alias "waveOutRestart" (ByVal hWaveOut As Long) As Long


Statement:
Declare Function waveOutReset Lib "winmm.dll" Alias "waveOutReset" (ByVal hWaveOut As Long) As Long


Statement:
Declare Function waveOutBreakLoop Lib "winmm.dll" Alias "waveOutBreakLoop" (ByVal hWaveOut As Long) As Long


Statement:
Declare Function waveOutGetPosition Lib "winmm.dll" Alias "waveOutGetPosition" (ByVal hWaveOut As Long, lpInfo As MMTIME, ByVal uSize As Long) As Long


Statement:
Declare Function waveOutGetPitch Lib "winmm.dll" Alias "waveOutGetPitch" (ByVal hWaveOut As Long, lpdwPitch As Long) As Long


Statement:
Declare Function waveOutSetPitch Lib "winmm.dll" Alias "waveOutSetPitch" (ByVal hWaveOut As Long, ByVal dwPitch As Long) As Long


Statement:
Declare Function waveOutGetPlaybackRate Lib "winmm.dll" Alias "waveOutGetPlaybackRate" (ByVal hWaveOut As Long, lpdwRate As Long) As Long


Statement:
Declare Function waveOutSetPlaybackRate Lib "winmm.dll" Alias "waveOutSetPlaybackRate" (ByVal hWaveOut As Long, ByVal dwRate As Long) As Long


Statement:
Declare Function waveOutGetID Lib "winmm.dll" Alias "waveOutGetID" (ByVal hWaveOut As Long, lpuDeviceID As Long) As Long


Statement:
Declare Function waveOutMessage Lib "winmm.dll" Alias "waveOutMessage" (ByVal hWaveOut As Long, ByVal msg As Long, ByVal dw1 As Long, ByVal dw2 As Long) As Long


Statement:
Declare Function waveInGetNumDevs Lib "winmm.dll" Alias "waveInGetNumDevs" () As Long


Statement:
Declare Function waveInGetDevCaps Lib "winmm.dll" Alias "waveInGetDevCapsA" (ByVal uDeviceID As Long, lpCaps As WAVEINCAPS, ByVal uSize As Long) As Long


Statement:
Declare Function waveInGetErrorText Lib "winmm.dll" Alias "waveInGetErrorTextA" (ByVal err As Long, ByVal lpText As String, ByVal uSize As Long) As Long


Statement:
Declare Function waveInOpen Lib "winmm.dll" Alias "waveInOpen" (lphWaveIn As Long, ByVal uDeviceID As Long, lpFormat As WAVEFORMAT, ByVal dwCallback As Long, ByVal dwInstance As Long, ByVal dwFlags As Long) As Long


Statement:
Declare Function waveInClose Lib "winmm.dll" Alias "waveInClose" (ByVal hWaveIn As Long) As Long


Statement:
Declare Function waveInPrepareHeader Lib "winmm.dll" Alias "waveInPrepareHeader" (ByVal hWaveIn As Long, lpWaveInHdr As WAVEHDR, ByVal uSize As Long) As Long


Statement:
Declare Function waveInUnprepareHeader Lib "winmm.dll" Alias "waveInUnprepareHeader" (ByVal hWaveIn As Long, lpWaveInHdr As WAVEHDR, ByVal uSize As Long) As Long


Statement:
Declare Function waveInAddBuffer Lib "winmm.dll" Alias "waveInAddBuffer" (ByVal hWaveIn As Long, lpWaveInHdr As WAVEHDR, ByVal uSize As Long) As Long


Statement:
Declare Function waveInStart Lib "winmm.dll" Alias "waveInStart" (ByVal hWaveIn As Long) As Long


Statement:
Declare Function waveInStop Lib "winmm.dll" Alias "waveInStop" (ByVal hWaveIn As Long) As Long


Statement:
Declare Function waveInReset Lib "winmm.dll" Alias "waveInReset" (ByVal hWaveIn As Long) As Long


Statement:
Declare Function waveInGetPosition Lib "winmm.dll" Alias "waveInGetPosition" (ByVal hWaveIn As Long, lpInfo As MMTIME, ByVal uSize As Long) As Long


Statement:
Declare Function waveInGetID Lib "winmm.dll" Alias "waveInGetID" (ByVal hWaveIn As Long, lpuDeviceID As Long) As Long


Statement:
Declare Function waveInMessage Lib "winmm.dll" Alias "waveInMessage" (ByVal hWaveIn As Long, ByVal msg As Long, ByVal dw1 As Long, ByVal dw2 As Long) As Long


Statement:
Public Const MIDIERR_UNPREPARED = (MIDIERR_BASE + 0)   '  header not prepared


Statement:
Public Const MIDIERR_STILLPLAYING = (MIDIERR_BASE + 1)   '  still something playing


Statement:
Public Const MIDIERR_NOMAP = (MIDIERR_BASE + 2)   '  no current map


Statement:
Public Const MIDIERR_NOTREADY = (MIDIERR_BASE + 3)   '  hardware is still busy


Statement:
Public Const MIDIERR_NODEVICE = (MIDIERR_BASE + 4)   '  port no longer connected


Statement:
Public Const MIDIERR_INVALIDSETUP = (MIDIERR_BASE + 5)   '  invalid setup


Statement:
Public Const MIDIERR_LASTERROR = (MIDIERR_BASE + 5)   '  last error in range


Statement:
Public Const MIM_LONGDATA = MM_MIM_LONGDATA


Statement:
Public Const MIM_LONGERROR = MM_MIM_LONGERROR


Statement:
Public Const MIDIMAPPER = (-1)  '  Cannot be cast to DWORD as RC complains


Statement:
Public Const MIDI_CACHE_VALID = (MIDI_CACHE_ALL Or MIDI_CACHE_BESTFIT Or MIDI_CACHE_QUERY Or MIDI_UNCACHE)  '  ;Internal


Statement:
Type MIDIOUTCAPS
        wMid As Integer
        wPid As Integer
        vDriverVersion As Long
        szPname As String * MAXPNAMELEN
        wTechnology As Integer
        wVoices As Integer
        wNotes As Integer
        wChannelMask As Integer
        dwSupport As Long
End Type


Statement:
Public Const MOD_MIDIPORT = 1  '  output port


Statement:
Public Const MOD_SYNTH = 2  '  generic internal synth


Statement:
Public Const MOD_SQSYNTH = 3  '  square wave internal synth


Statement:
Public Const MOD_FMSYNTH = 4  '  FM internal synth


Statement:
Public Const MOD_MAPPER = 5  '  MIDI mapper


Statement:
Public Const MIDICAPS_VOLUME = &H1         '  supports volume control


Statement:
Public Const MIDICAPS_LRVOLUME = &H2         '  separate left-right volume control


Statement:
Type MIDIINCAPS
        wMid As Integer
        wPid As Integer
        vDriverVersion As Long
        szPname As String * MAXPNAMELEN
End Type


Statement:
Type MIDIHDR
        lpData As String
        dwBufferLength As Long
        dwBytesRecorded As Long
        dwUser As Long
        dwFlags As Long
        lpNext As Long
        Reserved As Long
End Type


Statement:
Public Const MHDR_DONE = &H1         '  done bit


Statement:
Public Const MHDR_PREPARED = &H2         '  set if header prepared


Statement:
Public Const MHDR_INQUEUE = &H4         '  reserved for driver


Statement:
Public Const MHDR_VALID = &H7         '  valid flags / ;Internal /


Statement:
Declare Function midiOutGetDevCaps Lib "winmm.dll" Alias "midiOutGetDevCapsA" (ByVal uDeviceID As Long, lpCaps As MIDIOUTCAPS, ByVal uSize As Long) As Long


Statement:
Declare Function midiOutGetVolume Lib "winmm.dll" Alias "midiOutGetVolume" (ByVal uDeviceID As Long, lpdwVolume As Long) As Long


Statement:
Declare Function midiOutSetVolume Lib "winmm.dll" Alias "midiOutSetVolume" (ByVal uDeviceID As Long, ByVal dwVolume As Long) As Long


Statement:
Declare Function midiOutGetErrorText Lib "winmm.dll" Alias "midiOutGetErrorTextA" (ByVal err As Long, ByVal lpText As String, ByVal uSize As Long) As Long


Statement:
Declare Function midiOutOpen Lib "winmm.dll" Alias "midiOutOpen" (lphMidiOut As Long, ByVal uDeviceID As Long, ByVal dwCallback As Long, ByVal dwInstance As Long, ByVal dwFlags As Long) As Long


Statement:
Declare Function midiOutClose Lib "winmm.dll" Alias "midiOutClose" (ByVal hMidiOut As Long) As Long


Statement:
Declare Function midiOutPrepareHeader Lib "winmm.dll" Alias "midiOutPrepareHeader" (ByVal hMidiOut As Long, lpMidiOutHdr As MIDIHDR, ByVal uSize As Long) As Long


Statement:
Declare Function midiOutUnprepareHeader Lib "winmm.dll" Alias "midiOutUnprepareHeader" (ByVal hMidiOut As Long, lpMidiOutHdr As MIDIHDR, ByVal uSize As Long) As Long


Statement:
Declare Function midiOutShortMsg Lib "winmm.dll" Alias "midiOutShortMsg" (ByVal hMidiOut As Long, ByVal dwMsg As Long) As Long


Statement:
Declare Function midiOutLongMsg Lib "winmm.dll" Alias "midiOutLongMsg" (ByVal hMidiOut As Long, lpMidiOutHdr As MIDIHDR, ByVal uSize As Long) As Long


Statement:
Declare Function midiOutReset Lib "winmm.dll" Alias "midiOutReset" (ByVal hMidiOut As Long) As Long


Statement:
Declare Function midiOutCachePatches Lib "winmm.dll" Alias "midiOutCachePatches" (ByVal hMidiOut As Long, ByVal uBank As Long, lpPatchArray As Long, ByVal uFlags As Long) As Long


Statement:
Declare Function midiOutCacheDrumPatches Lib "winmm.dll" Alias "midiOutCacheDrumPatches" (ByVal hMidiOut As Long, ByVal uPatch As Long, lpKeyArray As Long, ByVal uFlags As Long) As Long


Statement:
Declare Function midiOutGetID Lib "winmm.dll" Alias "midiOutGetID" (ByVal hMidiOut As Long, lpuDeviceID As Long) As Long


Statement:
Declare Function midiOutMessage Lib "winmm.dll" Alias "midiOutMessage" (ByVal hMidiOut As Long, ByVal msg As Long, ByVal dw1 As Long, ByVal dw2 As Long) As Long


Statement:
Declare Function midiInGetNumDevs Lib "winmm.dll" Alias "midiInGetNumDevs" () As Long


Statement:
Declare Function midiInGetDevCaps Lib "winmm.dll" Alias "midiInGetDevCapsA" (ByVal uDeviceID As Long, lpCaps As MIDIINCAPS, ByVal uSize As Long) As Long


Statement:
Declare Function midiInGetErrorText Lib "winmm.dll" Alias "midiInGetErrorTextA" (ByVal err As Long, ByVal lpText As String, ByVal uSize As Long) As Long


Statement:
Declare Function midiInOpen Lib "winmm.dll" Alias "midiInOpen" (lphMidiIn As Long, ByVal uDeviceID As Long, ByVal dwCallback As Long, ByVal dwInstance As Long, ByVal dwFlags As Long) As Long


Statement:
Declare Function midiInClose Lib "winmm.dll" Alias "midiInClose" (ByVal hMidiIn As Long) As Long


Statement:
Declare Function midiInPrepareHeader Lib "winmm.dll" Alias "midiInPrepareHeader" (ByVal hMidiIn As Long, lpMidiInHdr As MIDIHDR, ByVal uSize As Long) As Long


Statement:
Declare Function midiInUnprepareHeader Lib "winmm.dll" Alias "midiInUnprepareHeader" (ByVal hMidiIn As Long, lpMidiInHdr As MIDIHDR, ByVal uSize As Long) As Long


Statement:
Declare Function midiInAddBuffer Lib "winmm.dll" Alias "midiInAddBuffer" (ByVal hMidiIn As Long, lpMidiInHdr As MIDIHDR, ByVal uSize As Long) As Long


Statement:
Declare Function midiInStart Lib "winmm.dll" Alias "midiInStart" (ByVal hMidiIn As Long) As Long


Statement:
Declare Function midiInStop Lib "winmm.dll" Alias "midiInStop" (ByVal hMidiIn As Long) As Long


Statement:
Declare Function midiInReset Lib "winmm.dll" Alias "midiInReset" (ByVal hMidiIn As Long) As Long


Statement:
Declare Function midiInGetID Lib "winmm.dll" Alias "midiInGetID" (ByVal hMidiIn As Long, lpuDeviceID As Long) As Long


Statement:
Declare Function midiInMessage Lib "winmm.dll" Alias "midiInMessage" (ByVal hMidiIn As Long, ByVal msg As Long, ByVal dw1 As Long, ByVal dw2 As Long) As Long


Statement:
Type AUXCAPS
        wMid As Integer
        wPid As Integer
        vDriverVersion As Long
        szPname As String * MAXPNAMELEN
        wTechnology As Integer
        dwSupport As Long
End Type


Statement:
Public Const AUXCAPS_CDAUDIO = 1  '  audio from internal CD-ROM drive


Statement:
Public Const AUXCAPS_AUXIN = 2  '  audio from auxiliary input jacks


Statement:
Public Const AUXCAPS_VOLUME = &H1         '  supports volume control


Statement:
Public Const AUXCAPS_LRVOLUME = &H2         '  separate left-right volume control


Statement:
Declare Function auxGetNumDevs Lib "winmm.dll" Alias "auxGetNumDevs" () As Long


Statement:
Declare Function auxGetDevCaps Lib "winmm.dll" Alias "auxGetDevCapsA" (ByVal uDeviceID As Long, lpCaps As AUXCAPS, ByVal uSize As Long) As Long


Statement:
Declare Function auxSetVolume Lib "winmm.dll" Alias "auxSetVolume" (ByVal uDeviceID As Long, ByVal dwVolume As Long) As Long


Statement:
Declare Function auxGetVolume Lib "winmm.dll" Alias "auxGetVolume" (ByVal uDeviceID As Long, lpdwVolume As Long) As Long


Statement:
Declare Function auxOutMessage Lib "winmm.dll" Alias "auxOutMessage" (ByVal uDeviceID As Long, ByVal msg As Long, ByVal dw1 As Long, ByVal dw2 As Long) As Long


Statement:
Public Const TIMERR_NOERROR = (0)  '  no error


Statement:
Public Const TIMERR_NOCANDO = (TIMERR_BASE + 1) '  request not completed


Statement:
Public Const TIMERR_STRUCT = (TIMERR_BASE + 33) '  time struct size


Statement:
Public Const TIME_ONESHOT = 0  '  program timer for single event


Statement:
Public Const TIME_PERIODIC = 1  '  program for continuous periodic event


Statement:
Type TIMECAPS
        wPeriodMin As Long
        wPeriodMax As Long
End Type


Statement:
Declare Function timeGetSystemTime Lib "winmm.dll" Alias "timeGetSystemTime" (lpTime As MMTIME, ByVal uSize As Long) As Long


Statement:
Declare Function timeGetTime Lib "winmm.dll" Alias "timeGetTime" () As Long


Statement:
Declare Function timeSetEvent Lib "winmm.dll" Alias "timeSetEvent" (ByVal uDelay As Long, ByVal uResolution As Long, ByVal lpFunction As Long, ByVal dwUser As Long, ByVal uFlags As Long) As Long


Statement:
Declare Function timeKillEvent Lib "winmm.dll" Alias "timeKillEvent" (ByVal uID As Long) As Long


Statement:
Declare Function timeGetDevCaps Lib "winmm.dll" Alias "timeGetDevCaps" (lpTimeCaps As TIMECAPS, ByVal uSize As Long) As Long


Statement:
Declare Function timeBeginPeriod Lib "winmm.dll" Alias "timeBeginPeriod" (ByVal uPeriod As Long) As Long


Statement:
Declare Function timeEndPeriod Lib "winmm.dll" Alias "timeEndPeriod" (ByVal uPeriod As Long) As Long


Statement:
Public Const JOYERR_NOERROR = (0)  '  no error


Statement:
Public Const JOYERR_PARMS = (JOYERR_BASE + 5) '  bad parameters


Statement:
Public Const JOYERR_NOCANDO = (JOYERR_BASE + 6) '  request not completed


Statement:
Public Const JOYERR_UNPLUGGED = (JOYERR_BASE + 7) '  joystick is unplugged


Statement:
Type JOYCAPS
        wMid As Integer
        wPid As Integer
        szPname As String * MAXPNAMELEN
        wXmin As Integer
        wXmax As Integer
        wYmin As Integer
        wYmax As Integer
        wZmin As Integer
        wZmax As Integer
        wNumButtons As Integer
        wPeriodMin As Integer
        wPeriodMax As Integer
End Type


Statement:
Type JOYINFO
        wXpos As Integer
        wYpos As Integer
        wZpos As Integer
        wButtons As Integer
End Type


Statement:
Declare Function joyGetDevCaps Lib "winmm.dll" Alias "joyGetDevCapsA" (ByVal id As Long, lpCaps As JOYCAPS, ByVal uSize As Long) As Long


Statement:
Declare Function joyGetNumDevs Lib "winmm.dll" Alias "joyGetNumDev" () As Long


Statement:
Declare Function joyGetThreshold Lib "winmm.dll" Alias "joyGetThreshold" (ByVal id As Long, lpuThreshold As Long) As Long


Statement:
Declare Function joyReleaseCapture Lib "winmm.dll" Alias "joyReleaseCapture" (ByVal id As Long) As Long


Statement:
Declare Function joySetCapture Lib "winmm.dll" Alias "joySetCapture" (ByVal hwnd As Long, ByVal uID As Long, ByVal uPeriod As Long, ByVal bChanged As Long) As Long


Statement:
Declare Function joySetThreshold Lib "winmm.dll" Alias "joySetThreshold" (ByVal id As Long, ByVal uThreshold As Long) As Long


Statement:
Public Const MMIOERR_FILENOTFOUND = (MMIOERR_BASE + 1)  '  file not found


Statement:
Public Const MMIOERR_OUTOFMEMORY = (MMIOERR_BASE + 2)  '  out of memory


Statement:
Public Const MMIOERR_CANNOTOPEN = (MMIOERR_BASE + 3)  '  cannot open


Statement:
Public Const MMIOERR_CANNOTCLOSE = (MMIOERR_BASE + 4)  '  cannot close


Statement:
Public Const MMIOERR_CANNOTREAD = (MMIOERR_BASE + 5)  '  cannot read


Statement:
Public Const MMIOERR_CANNOTWRITE = (MMIOERR_BASE + 6) '  cannot write


Statement:
Public Const MMIOERR_CANNOTSEEK = (MMIOERR_BASE + 7)  '  cannot seek


Statement:
Public Const MMIOERR_CANNOTEXPAND = (MMIOERR_BASE + 8)  '  cannot expand file


Statement:
Public Const MMIOERR_CHUNKNOTFOUND = (MMIOERR_BASE + 9)  '  chunk not found


Statement:
Public Const MMIOERR_UNBUFFERED = (MMIOERR_BASE + 10) '  file is unbuffered


Statement:
Public Const CFSEPCHAR = "+"  '  compound file name separator char.


Statement:
Type MMIOINFO
        dwFlags As Long
        fccIOProc As Long
        pIOProc As Long
        wErrorRet As Long
        htask As Long
        cchBuffer As Long
        pchBuffer As String
        pchNext As String
        pchEndRead As String
        pchEndWrite As String
        lBufOffset As Long
        lDiskOffset As Long
        adwInfo(4) As Long
        dwReserved1 As Long
        dwReserved2 As Long
        hmmio As Long
End Type


Statement:
Public Const MMIO_RWMODE = &H3         '  mask to get bits used for opening


Statement:
Public Const MMIO_SHAREMODE = &H70        '  file sharing mode number


Statement:
Public Const MMIO_CREATE = &H1000      '  create new file (or truncate file)


Statement:
Public Const MMIO_PARSE = &H100       '  parse new file returning path


Statement:
Public Const MMIO_DELETE = &H200       '  create new file (or truncate file)


Statement:
Public Const MMIO_EXIST = &H4000      '  checks for existence of file


Statement:
Public Const MMIO_ALLOCBUF = &H10000     '  mmioOpen() should allocate a buffer


Statement:
Public Const MMIO_GETTEMP = &H20000     '  mmioOpen() should retrieve temp name


Statement:
Public Const MMIO_DIRTY = &H10000000  '  I/O buffer is dirty


Statement:
Public Const MMIO_OPEN_VALID = &H3FFFF     '  valid flags for mmioOpen / ;Internal /


Statement:
Public Const MMIO_READ = &H0         '  open file for reading only


Statement:
Public Const MMIO_WRITE = &H1         '  open file for writing only


Statement:
Public Const MMIO_READWRITE = &H2         '  open file for reading and writing


Statement:
Public Const MMIO_COMPAT = &H0         '  compatibility mode


Statement:
Public Const MMIO_EXCLUSIVE = &H10        '  exclusive-access mode


Statement:
Public Const MMIO_DENYWRITE = &H20        '  deny writing to other processes


Statement:
Public Const MMIO_DENYREAD = &H30        '  deny reading to other processes


Statement:
Public Const MMIO_DENYNONE = &H40        '  deny nothing to other processes


Statement:
Public Const MMIO_FHOPEN = &H10    '  mmioClose(): keep file handle open


Statement:
Public Const MMIO_EMPTYBUF = &H10    '  mmioFlush(): empty the I/O buffer


Statement:
Public Const MMIO_TOUPPER = &H10    '  mmioStringToFOURCC(): cvt. to u-case


Statement:
Public Const MMIO_INSTALLPROC = &H10000     '  mmioInstallIOProc(): install MMIOProc


Statement:
Public Const MMIO_PUBLICPROC = &H10000000  '  mmioInstallIOProc: install Globally


Statement:
Public Const MMIO_UNICODEPROC = &H1000000   '  mmioInstallIOProc(): Unicode MMIOProc


Statement:
Public Const MMIO_REMOVEPROC = &H20000     '  mmioInstallIOProc(): remove MMIOProc


Statement:
Public Const MMIO_FINDPROC = &H40000     '  mmioInstallIOProc(): find an MMIOProc


Statement:
Public Const MMIO_FINDCHUNK = &H10    '  mmioDescend(): find a chunk by ID


Statement:
Public Const MMIO_FINDRIFF = &H20    '  mmioDescend(): find a LIST chunk


Statement:
Public Const MMIO_FINDLIST = &H40    '  mmioDescend(): find a RIFF chunk


Statement:
Public Const MMIO_CREATERIFF = &H20    '  mmioCreateChunk(): make a LIST chunk


Statement:
Public Const MMIO_CREATELIST = &H40    '  mmioCreateChunk(): make a RIFF chunk


Statement:
Public Const MMIO_VALIDPROC = &H11070000  '  valid for mmioInstallIOProc / ;Internal /


Statement:
Public Const MMIOM_READ = MMIO_READ  '  read (must equal MMIO_READ!)


Statement:
Public Const MMIOM_WRITE = MMIO_WRITE  '  write (must equal MMIO_WRITE!)


Statement:
Public Const MMIOM_SEEK = 2  '  seek to a new position in file


Statement:
Public Const MMIOM_OPEN = 3  '  open file


Statement:
Public Const MMIOM_CLOSE = 4  '  close file


Statement:
Public Const MMIOM_WRITEFLUSH = 5  '  write and flush


Statement:
Public Const MMIOM_RENAME = 6  '  rename specified file


Statement:
Public Const MMIOM_USER = &H8000  '  beginning of user-defined messages


Statement:
Public Const SEEK_SET = 0  '  seek to an absolute position


Statement:
Public Const SEEK_CUR = 1  '  seek relative to current position


Statement:
Public Const SEEK_END = 2  '  seek relative to end of file


Statement:
Public Const MMIO_DEFAULTBUFFER = 8192  '  default buffer size


Statement:
Type MMCKINFO
    ckid As Long
    ckSize As Long
    fccType As Long
    dwDataOffset As Long
    dwFlags As Long
End Type


Statement:
Declare Function mmioStringToFOURCC Lib "winmm.dll" Alias "mmioStringToFOURCCA" (ByVal sz As String, ByVal uFlags As Long) As Long


Statement:
Declare Function mmioOpen Lib "winmm.dll" Alias "mmioOpenA" (ByVal szFileName As String, lpmmioinfo As MMIOINFO, ByVal dwOpenFlags As Long) As Long


Statement:
Declare Function mmioRename Lib "winmm.dll" Alias "mmioRenameA" (ByVal szFileName As String, ByVal SzNewFileName As String, lpmmioinfo As MMIOINFO, ByVal dwRenameFlags As Long) As Long


Statement:
Declare Function mmioClose Lib "winmm.dll" Alias "mmioClose" (ByVal hmmio As Long, ByVal uFlags As Long) As Long


Statement:
Declare Function mmioRead Lib "winmm.dll" Alias "mmioRead" (ByVal hmmio As Long, ByVal pch As String, ByVal cch As Long) As Long


Statement:
Declare Function mmioWrite Lib "winmm.dll" Alias "mmioWrite" (ByVal hmmio As Long, ByVal pch As String, ByVal cch As Long) As Long


Statement:
Declare Function mmioSeek Lib "winmm.dll" Alias "mmioSeek" (ByVal hmmio As Long, ByVal lOffset As Long, ByVal iOrigin As Long) As Long


Statement:
Declare Function mmioGetInfo Lib "winmm.dll" Alias "mmioGetInfo" (ByVal hmmio As Long, lpmmioinfo As MMIOINFO, ByVal uFlags As Long) As Long


Statement:
Declare Function mmioSetInfo Lib "winmm.dll" Alias "mmioSetInfo" (ByVal hmmio As Long, lpmmioinfo As MMIOINFO, ByVal uFlags As Long) As Long


Statement:
Declare Function mmioSetBuffer Lib "winmm.dll" Alias "mmioSetBuffer" (ByVal hmmio As Long, ByVal pchBuffer As String, ByVal cchBuffer As Long, ByVal uFlags As Long) As Long


Statement:
Declare Function mmioFlush Lib "winmm.dll" Alias "mmioFlush" (ByVal hmmio As Long, ByVal uFlags As Long) As Long


Statement:
Declare Function mmioAdvance Lib "winmm.dll" Alias "mmioAdvance" (ByVal hmmio As Long, lpmmioinfo As MMIOINFO, ByVal uFlags As Long) As Long


Statement:
Declare Function mmioSendMessage Lib "winmm.dll" Alias "mmioSendMessage" (ByVal hmmio As Long, ByVal uMsg As Long, ByVal lParam1 As Long, ByVal lParam2 As Long) As Long


Statement:
Declare Function mmioDescend Lib "winmm.dll" Alias "mmioDescend" (ByVal hmmio As Long, lpck As MMCKINFO, lpckParent As MMCKINFO, ByVal uFlags As Long) As Long


Statement:
Declare Function mmioAscend Lib "winmm.dll" Alias "mmioAscend" (ByVal hmmio As Long, lpck As MMCKINFO, ByVal uFlags As Long) As Long


Statement:
Declare Function mmioCreateChunk Lib "winmm.dll" Alias "mmioCreateChunk" (ByVal hmmio As Long, lpck As MMCKINFO, ByVal uFlags As Long) As Long


Statement:
Declare Function mciSendCommand Lib "winmm.dll" Alias "mciSendCommandA" (ByVal wDeviceID As Long, ByVal uMessage As Long, ByVal dwParam1 As Long, ByVal dwParam2 As Long) As Long


Statement:
Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long


Statement:
Declare Function mciGetCreatorTask Lib "winmm.dll" Alias "mciGetCreatorTask" (ByVal wDeviceID As Long) As Long


Statement:
Declare Function mciGetDeviceID Lib "winmm.dll" Alias "mciGetDeviceIDA" (ByVal lpstrName As String) As Long


Statement:
Declare Function mciGetDeviceIDFromElementID Lib "winmm.dll" Alias "mciGetDeviceIDFromElementIDA" (ByVal dwElementID As Long, ByVal lpstrType As String) As Long


Statement:
Declare Function mciGetErrorString Lib "winmm.dll" Alias "mciGetErrorStringA" (ByVal dwError As Long, ByVal lpstrBuffer As String, ByVal uLength As Long) As Long


Statement:
Declare Function mciExecute Lib "winmm.dll" Alias "mciExecute" (ByVal lpstrCommand As String) As Long


Statement:
Public Const MCIERR_INVALID_DEVICE_ID = (MCIERR_BASE + 1)


Statement:
Public Const MCIERR_UNRECOGNIZED_KEYWORD = (MCIERR_BASE + 3)


Statement:
Public Const MCIERR_UNRECOGNIZED_COMMAND = (MCIERR_BASE + 5)


Statement:
Public Const MCIERR_HARDWARE = (MCIERR_BASE + 6)


Statement:
Public Const MCIERR_INVALID_DEVICE_NAME = (MCIERR_BASE + 7)


Statement:
Public Const MCIERR_OUT_OF_MEMORY = (MCIERR_BASE + 8)


Statement:
Public Const MCIERR_DEVICE_OPEN = (MCIERR_BASE + 9)


Statement:
Public Const MCIERR_CANNOT_LOAD_DRIVER = (MCIERR_BASE + 10)


Statement:
Public Const MCIERR_MISSING_COMMAND_STRING = (MCIERR_BASE + 11)


Statement:
Public Const MCIERR_PARAM_OVERFLOW = (MCIERR_BASE + 12)


Statement:
Public Const MCIERR_MISSING_STRING_ARGUMENT = (MCIERR_BASE + 13)


Statement:
Public Const MCIERR_BAD_INTEGER = (MCIERR_BASE + 14)


Statement:
Public Const MCIERR_PARSER_INTERNAL = (MCIERR_BASE + 15)


Statement:
Public Const MCIERR_DRIVER_INTERNAL = (MCIERR_BASE + 16)


Statement:
Public Const MCIERR_MISSING_PARAMETER = (MCIERR_BASE + 17)


Statement:
Public Const MCIERR_UNSUPPORTED_FUNCTION = (MCIERR_BASE + 18)


Statement:
Public Const MCIERR_FILE_NOT_FOUND = (MCIERR_BASE + 19)


Statement:
Public Const MCIERR_DEVICE_NOT_READY = (MCIERR_BASE + 20)


Statement:
Public Const MCIERR_INTERNAL = (MCIERR_BASE + 21)


Statement:
Public Const MCIERR_DRIVER = (MCIERR_BASE + 22)


Statement:
Public Const MCIERR_CANNOT_USE_ALL = (MCIERR_BASE + 23)


Statement:
Public Const MCIERR_MULTIPLE = (MCIERR_BASE + 24)


Statement:
Public Const MCIERR_EXTENSION_NOT_FOUND = (MCIERR_BASE + 25)


Statement:
Public Const MCIERR_OUTOFRANGE = (MCIERR_BASE + 26)


Statement:
Public Const MCIERR_FLAGS_NOT_COMPATIBLE = (MCIERR_BASE + 28)


Statement:
Public Const MCIERR_FILE_NOT_SAVED = (MCIERR_BASE + 30)


Statement:
Public Const MCIERR_DEVICE_TYPE_REQUIRED = (MCIERR_BASE + 31)


Statement:
Public Const MCIERR_DEVICE_LOCKED = (MCIERR_BASE + 32)


Statement:
Public Const MCIERR_DUPLICATE_ALIAS = (MCIERR_BASE + 33)


Statement:
Public Const MCIERR_BAD_CONSTANT = (MCIERR_BASE + 34)


Statement:
Public Const MCIERR_MUST_USE_SHAREABLE = (MCIERR_BASE + 35)


Statement:
Public Const MCIERR_MISSING_DEVICE_NAME = (MCIERR_BASE + 36)


Statement:
Public Const MCIERR_BAD_TIME_FORMAT = (MCIERR_BASE + 37)


Statement:
Public Const MCIERR_NO_CLOSING_QUOTE = (MCIERR_BASE + 38)


Statement:
Public Const MCIERR_DUPLICATE_FLAGS = (MCIERR_BASE + 39)


Statement:
Public Const MCIERR_INVALID_FILE = (MCIERR_BASE + 40)


Statement:
Public Const MCIERR_NULL_PARAMETER_BLOCK = (MCIERR_BASE + 41)


Statement:
Public Const MCIERR_UNNAMED_RESOURCE = (MCIERR_BASE + 42)


Statement:
Public Const MCIERR_NEW_REQUIRES_ALIAS = (MCIERR_BASE + 43)


Statement:
Public Const MCIERR_NOTIFY_ON_AUTO_OPEN = (MCIERR_BASE + 44)


Statement:
Public Const MCIERR_NO_ELEMENT_ALLOWED = (MCIERR_BASE + 45)


